Transmitting apparatus for providing information by effective use of bands

ABSTRACT

A transmitting apparatus adapted to effectively use the band for transferring programs of television broadcasting. A program of a first channel transmitted from the transmitting side can be viewed in real time on the receiving side. A program of a second channel is transmitted to the receiving side in advance in a time zone of lower audience rate than other time zones and stored in a storage device of the receiving side. Each program to be stored is encrypted. When a provision time of a program comes, the data such as a key are transmitted from the transmitting side to the receiving side along with the program data of the first channel. The receiving side extracts the data such as a key and, by use of the extracted data, provides the program stored in the storage device to viewers.

TECHNICAL FIELD

The present invention relates generally to a transmitting apparatus and,more particularly, to a transmitting apparatus suitably for use inproviding information such as programs to users by effective use ofbands.

BACKGROUND ART

Recently, the television broadcasting by use of artificial satellites isbecoming pervasive. As shown in FIG. 1, data associated with a programtransmitted from a transmitting apparatus 1 of a broadcasting stationare supplied via a satellite 2 to a receiving apparatus 3 installed ineach home.

FIG. 2 shows an exemplary configuration of the transmitting apparatus 1.The transmitting apparatus 1 has a control section 11 which controls theinside of the apparatus. The control section 11 has a memory 12 foraccumulating organization data. The organization data denotes the dataassociated with a schedule (a program table) for use in broadcastingprograms. The control section 11 also has a clock 13, by which clockingthe data transmission timing of each section is controlled.

A VTR (Video Tape Recorder) cart 14 is composed of a plurality of VTRs,a device for carrying and loading VTR tapes into these VTRs, and a shelffor accommodating these VTR tapes and, under the control of the controlsection 11, carries and sets predetermined VTR tapes from the shelf tothe VTRs. Of the data reproduced from each VTR tape set to each VTR,video data are supplied to a video encoder 15 while audio data aresupplied to an audio encoder 16.

The video encoder 15 and the audio encoder 16 encode the supplied databy a predetermined encoding algorithm, MPEG (Moving Picture ExpertGroup) for example, and output the resultant data to a multiplexer 17.An EPG (Electric Program Guide) generated by an EPG generating section18 is also supplied to the multiplexer 17.

Under the control of a multiplexing control section 19, the multiplexer17 multiplexes the supplied data. A standard by which the multiplexer 17executes multiplexing is time-division multiplexing including MPEG2 TS(ISO13818-1) for example.

The multiplexing control section 19 receives information from thecontrol section 11 to determine the PID (Packet ID) of each TS(Transport Stream) packet for transporting video and audio streams andoutputs the determined PID to the multiplexer 17. On the basis of thePID supplied from the multiplexing control section 19, the multiplexer17 sets the PID of each TS packet in which the supplied video and audiostreams are stored.

The multiplexing control section 19 generates information associatedwith PSI (Program Specific Information) including PID information andsupplies the generated information to the multiplexer 19. Themultiplexer 17 includes the supplied PSI information in other signals toperform multiplexing.

The control section 11 controls each component of the transmittingapparatus 1 and, at the same time, converts the clock informationprovided by the incorporated clock 13 into a PCR (Program ClockReference) to supply it to the multiplexer 17. Also, the control section11 issues a command to the multiplexing control section 19 telling towhich stream the PCR is to be added. In the description below, it isassumed that the PCR is attached to the video stream.

The multiplexing control section 19 specifies the same PID as the PIDspecified for the video stream as the PID of the transport packet towhich PCR is added. The multiplexer 17 includes the supplied PCR intothe transport packet of the video stream.

The output of the multiplexer 17 is supplied to an ECC (Error CorrectingCode)/modulating section 20 to be added with an error correction codeand modulated for transmission, the resultant data being outputted to anamplifying section 21. The amplifying section 21 amplifies the supplieddata to a power level enough for transmission and transmits theamplified data as a radio wave via an antenna 22.

The data thus transmitted from the transmitting apparatus 1 are receivedby the receiving apparatus 3 via the satellite 2. FIG. 3 illustrates anexemplary configuration of the receiving apparatus 3. The receivingapparatus 3 has a control section 31 for controlling the inside of thisapparatus. The control section 31 has a memory 32 for storing EPG andPSI information and a clock 33.

Radio waves (or radio signals) received at an antenna 34 of thereceiving apparatus 3 are outputted to a front end 35. The signals aretuned in, demodulated, and error correction codes are removed from thesignals to output the signals as a transport stream. The transportstream outputted from the front end 35 is outputted to a PSI filter 36,an EPG filter 37, an output PID filter 38, and a PCR PID filter 39.These filters each extract a transport packet including the specifiedPID from the supplied transport stream.

The PSI filter 36 extracts a transport packet which contains PSI fromthe supplied transport stream and outputs the obtained PSI to thecontrol section 31. The control section 31 stores the received PSI intothe memory 32.

The EPG PID filter 37 extracts a transport packet which contains an EPGfrom the supplied transport stream. The PID of the transport packetcontaining the EPG is supplied from the control section 31. On the basisof this supplied PID, the EPG PID filter 37 further extracts EPGinformation from the extracted transport packet and outputs theextracted EPG information to the control section 31. The control section31 stores the received EPG information into the memory 32.

The output PID filter 38 extracts a transport packets which contains avideo stream and an audio stream from the supplied transport stream. ThePID of the transport packet containing the video stream and audio streamis supplied from the control section 31.

On the basis of the PID supplied from the control section 31, the outputPID filter 38 extracts the video stream from the supplied transportpacket and outputs the extracted video stream to a video decoder 40.Likewise, on the basis of the supplied PID, the output PID filter 38extracts the audio stream from the supplied transport packet and outputsthe extracted audio stream to an audio decoder 41.

The PCR PID filter 39 extracts a transport packet which contains a PCRfrom the supplied transport stream. The PID of the transport packetcontaining this PCR is supplied from the control section 31. On thebasis of the supplied PID, the PCR PID filter 39 extracts the PCR fromthe supplied transport stream and supplies the extracted PCR to a STC(System Time Clock) 42. The STC 42 synchronizes its clock on the basisof the supplied PCR to generate a reference clock.

An OSD (On Screen Display) 43 generates a video signal, under thecontrol of the control section 31 as required, and supplies thegenerated video signal to an adding section 44. The adding section 44adds (or mixes) the video signal supplied from the OSD 43 to the videosignal supplied from the video decoder 40 and outputs the resultantsignal to a television receiver (not shown) connected to the receivingapparatus 3.

The receiving apparatus 3 receives a plurality of programs at the sametime. The receiving apparatus 3 must provide a program requested by theuser from among the plurality of received programs. The programselecting operation to be performed by the receiving apparatus 3 will bedescribed below with reference to the flowchart shown in FIG. 4. Theprocessing described in the flowchart shown in FIG. 4 is executed whenthe receiving apparatus 3 is powered on by a remote controller (notshown) for example.

In step S1, the control section 31 of the receiving apparatus 3determines whether or not any one of the PSI information and the EPGinformation stored in the memory 32 is older than the current time asinformation and lacking as information. Namely, the control section 31compares the PSI and EPG information stored in the memory 32 with theclock information indicated by the clock 33 to determine whether or notthe information of PSI and EPG is older than the current time andlacking as information.

If any one of the PSI information and the EPG information stored in thememory 32 is found older than the current time or lacking as informationin step S1, then the procedure goes to step S2; if the information isfound not older than the current time or not lacking as information,then the procedure goes to step S3 by skipping step S2.

In step S2, the PSI and the EPG are updated. The control section 31commands the front end 35 to receive a default channel. On the receivingapparatus 3, a predetermine channel is set as default beforehand. Thefront end 35 tunes in the frequency/band on which the default channel istransmitted, demodulates the signal, performs error correction on thesignal by use of an error correction code, and outputs the resultantsignal as a transport stream.

The transport stream outputted from the front end 35 is supplied to thePSI filter 36 and the EPG PID filter 37. The transport stream is alsosupplied to the output PID filter 38 and the PCR PID filter 39; in thiscase, however, the supplied transport stream is not used in thesefilters (or not processed by these filters).

The PSI filter 36 extracts the PSI information from the suppliedtransport stream and supplies the extracted PSI information to thecontrol section 31. The PSI supplied to the control section 31 is storedin the memory 32. In this case, the information associated with thenumber of programs to be broadcast at the same time (1 in this example),the number of video/audio streams for each program (1 each in thisexample), and a method of transmitting the PID and EPG of transportpackets carrying the PID and PCR for each stream is supplied to thecontrol section 31.

Since the PID containing PSI is determined beforehand, the controlsection 31 need not supply the PID to the PSI filter 36. The controlsection 31 supplies the value of the PID of the transport packetcontaining EPG to the EPG PID filter 37. By use of the supplied PIDvalue, the EPG PID filter 37 extracts EPG data therefrom from thetransport packet and supplies the extracted EPG data to the controlsection 31. The EPG information supplied to the control section 31 arestored in the memory 32.

The PSI and EPG information is contained in each transport stream. Inthe control section 31, the above-mentioned operation is alwaysperformed, and always updating the PSI and EPG information.

As required or in response to a user command from a remote controllernot shown, the control section 31 extracts and manipulates the EPGinformation and commands the OSD 43 to converts the resultantinformation into a video signal. The video signal generated by the OSD43 is mixed by the adding section 44 with the output signal of the videodecoder 40 and the resultant signal is outputted.

In step S3, the control section 31 reads the channel viewed immediatelybefore the last power-off sequence from a non-volatile storage devicenot shown for example. It is assumed here that channel A was viewedimmediately before the last power-off sequence.

The control section 31 commands the front end 35 to receive channel A.The front end 35 tunes in the transmitted frequency/band of channel A,demodulates the signal, performs error correction on the demodulatedsignal by error correction code, and outputs the transport stream.

The transport stream outputted from the front end 35 is supplied to thePSI filter 36, the EPG PID filter 37, the output PID filter 38, and thePCR PID filter 39.

As described above, the PSI filter 204 extracts PSI information from thesupplied transport stream and supplies the extracted PSI information tothe control section 31, upon which the PSI stored in the memory 32 isupdated. As described above, the EPG PID filter 37 also extracts EPGinformation from the transport packet by use of the value of thesupplied PID and supplies the extracted EPG information to the controlsection 31. The control section 31 updates the EPG information stored inthe memory 32.

The control section 31 supplies to the output PID filter 38 the value ofthe PID of the transport packet carrying a video stream and the value ofthe PID of the transport packet carrying an audio stream. At the sametime, the control section 31 supplies the value of the PID of thetransport packet containing an EPG to the EPG PID filter 37. The controlsection 31 supplies the value of the PID of the transport packetcontaining a PCR to the PCR PID filter 39.

The output PID filter 38 extracts the video stream and the audio streamfrom the transport packet by use of the supplied two PID values. Thevideo stream is supplied to the video decoder 40 while the audio streamis supplied to the audio decoder 41.

The video decoder 40 converts (or decodes) the supplied video streamencoded by a predetermined encoding scheme into a video signal andoutputs it. Likewise, the audio decoder 41 converts the supplied audiostream into an audio signal and outputs it.

The PCR PID filter 39 extracts a PCR from the transport packet by use ofthe given PID value and supplies the extracted PCR to the STC 42. TheSTC 42 synchronizes the own clock with the supplied PCR. The internalclock generated by use of the PCR is used as a synchronous clock for thevideo decoder 40 and audio decoder 41.

In step S4, the control section 31 determines whether or not a channelchange command has been issued by a user not shown through a remotecontroller not shown or a button for example arranged on the receivingapparatus 3. If the channel is found changed, the procedure goes to stepS5. If the channel is found not changed, the procedure returns to stepS4 to repeat the processing therefrom.

If the command is found issued by the user in step S4, this command issent to the control section 31, which in turn commands the front end 35to receive the specified channel. Consequently, in step 5, the transportstream outputted from the front end 35 is processed as described above,thereby outputting the program of the newly selected channel. When thisprocessing comes to an end, the procedure returns to step S4 to repeatthe processing therefrom.

Thus, the user-specified program is provided to the user from among theplurality of channels (programs) received by the receiving apparatus 3.

The following describes channels which are transmitted from thetransmitting apparatus 1 to the receiving apparatus 3. In the followingexample, the case in which only one channel A is provided over 24 hoursas shown in FIG. 5. It is assumed that the band prepared as broadcastingfacilities be 24 Mbps for a whole day. This value is the bit rate beforeperforming error correction and modulation and the bit rate of the datato be transferred from the multiplexer 17 to the ECC/modulating section20.

FIG. 6 illustrates an enlarged portion around a prime time of October 10shown in FIG. 5, with program divisions and program names added. Theprime time denotes a time zone in which audience rate is higher than inother time zones; for example, a time zone from 19:00 to 23:00.

In channel A, “program A” is provided from 18:00 to 19:00 of October 10.Likewise, “program B” is provided from 19:00 to 20:00, “program C” isprovided from 20:00 to 21:00, and “program D” is provided from 21:00 to23:00.

A program provision (broadcasting) schedule listed with necessaryinformation as shown in FIG. 7 is called organization data for example.Organization data are a collection of plural records for each program.Each record for each program is constituted by six fields “channel,”“date,” “start time,” “length,” “program name,” and “attribute.”

The organization as described above are set to the control section 11 bythe administrator not shown of the transmitting apparatus 1 and storedin the memory 12. The organization data are used to control thetransmitting apparatus 1 in its entirety.

However, the above-mentioned conventional configuration has a problemthat, as described above, channel A provides programs by use of atransmission path having a band of 24 Mbps all day, which indicates thatthe program provision is performed on the same band regardless of primetime and other time zones, resulting in the ineffective usage of theband.

DISCLOSURE OF INVENTION

It is therefore an object of the present invention to provide atransmitting apparatus which is configured to transmit data associatedwith a program to a receiving apparatus and store these data therein ina time zone in which the band is not tight and provide this program in aprime time, thereby providing an effect as if there were an increase inchannels in the prime time.

In carrying out the invention and according to one aspect thereof, thereis provided a transmitting apparatus comprising: input means forinputting data of a program; encrypting means for encrypting the datainputted from the input means by use of a predetermined key; firsttransmitting means for transmitting, in a predetermined time zone, thedata encrypted by the encrypting means; and second transmitting meansfor transmitting the key after the predetermined time zone and at a timefor enabling the program to be viewed on the receiving side at a viewingtime intended by the transmitting side.

In the above-mentioned transmitting apparatus, the predetermined timezone may be lower in audience rate than other time zones.

According to another aspect of the present invention, theabove-mentioned transmitting apparatus, further comprises: detectingmeans for detecting an intra-picture from the data inputted from theinput means; and creating means for creating associating information forassociating a position of the intra-picture detected by the detectingmeans with an elapsed time from a starting time of the program; whereinthe first transmitting means transmits the associating information alongwith the encrypted data.

In the above-mentioned transmitting apparatus, the first transmittingmeans, by use of a transmission channel for transmitting data of a firstprogram to be viewed by a viewer in a first program channel, transmits,in the predetermined time zone, data of a second program to be viewed bythe viewer in a second program channel; and the second transmittingmeans transmits the key by use of a same transmission channel as thetransmission channel to be used by the first transmitting means.

The above-mentioned transmitting apparatus, further comprising: firstgenerating means for generating a first EPG associated with both thefirst program and the second program; and second generating means forgenerating a second EPG associated with the second program; wherein thefirst EPG includes a flag indicative of the first program or the secondprogram.

In carrying out the invention and according to another aspect thereof,there is provided a transmitting method comprising: an encrypting stepfor encrypting program data by use of a predetermined key; a firsttransmission control step for controlling the transmission of the dataencrypted by the encrypting step in a predetermined time zone; and asecond transmission control step for controlling the transmission of thekey after the predetermined time zone and at a time for enabling theprogram to be viewed on the receiving side at a viewing time intended bythe transmitting side.

In carrying out the invention and according to still another aspectthereof, there is provided a first recording medium recording acomputer-readable program comprising: an encrypting step for encryptingprogram data by use of a predetermined key; a first transmission controlstep for controlling the transmission of the data encrypted by theencrypting step in a predetermined time zone; and a second transmissioncontrol step for controlling the transmission of the key after thepredetermined time zone and at a time for enabling the program to beviewed on a receiving side at a viewing time intended by a transmittingside.

In carrying out the invention and according to still another aspectthereof, there is provided a first program for causing a computer toexecute: an encrypting step for encrypting program data by use of apredetermined key; a first transmission control step for controlling thetransmission of the data encrypted by the encrypting step in apredetermined time zone; and a second transmission control step forcontrolling the transmission of the key after the predetermined timezone and at a time for enabling the program to be viewed on a receivingside at a viewing time intended by a transmitting side.

In carrying out the invention and according to yet another aspectthereof, there is provided a receiving apparatus comprising: storagemeans for receiving and storing, as data of a second program of a secondprogram channel, encrypted program data supplied in a predetermined timezone by use of a transmission channel for transmitting data of a firstprogram of a first program channel; a receiving means for receiving akey for decrypting the program data, the key being transmitted after thepredetermined time zone and at a time for enabling the viewing, on thereceiving side, of the second program at a viewing time intended by thetransmitting side; and a reproducing means for reproducing the secondprogram by decrypting the data of the second program stored in thestorage means by use of the key received by the receiving means.

In carrying out the invention and according to a different aspectthereof, there is provided a receiving method comprising: a storagecontrol step for controlling the reception of encrypted program datasupplied in a predetermined time zone by use of a transmission channelfor transmitting data of a first program of a first program channel andcontrolling the storage of the supplied data as data of a second programof a second program channel; a reception control step for controllingthe reception of a key for decrypting the program data, the key beingtransmitted after the predetermined time zone and at a time for enablingthe viewing, on the receiving side, of the second program at a viewingtime intended by the transmitting side; and a reproducing step forreproducing the second program by decrypting the data of the secondprogram in which the storage is controlled in the storage control stepby use of the key received by the reception control step.

In carrying out the invention and according to a still different aspectthereof, there is provided a second recording medium recording acomputer-readable program comprising: a storage control step forcontrolling the reception of encrypted program data supplied in apredetermined time zone by use of a transmission channel fortransmitting data of a first program of a first program channel andcontrolling the storage of the supplied data as data of a second programof a second program channel; a reception control step for controllingthe reception of a key for decrypting the program data, the key beingtransmitted after the predetermined time zone and at a time for enablingthe viewing, on the receiving side, of the second program at a viewingtime intended by the transmitting side; and a reproducing step forreproducing the second program by decrypting the data of the secondprogram in which the storage is controlled in the storage control stepby use of the key received by the reception control step.

In carrying out the invention and according to a yet different aspectthereof, there is provided a second program for causing a computer toexecute: a storage control step for controlling the reception andstorage of encrypted program data supplied in a predetermined time zoneby use of a transmission channel for transmitting data of a firstprogram of a first program channel and controlling the storage of thesupplied data as data of a second program of a second program channel; areception control step for controlling the reception of a key fordecrypting the program data, the key being transmitted after thepredetermined time zone and at a time for enabling the viewing, on areceiving side, of the second program at a viewing time intended by atransmitting side; and a reproducing step for reproducing the secondprogram by decrypting the data of the second program in which thestorage is controlled in the storage control step by use of the keyreceived by the reception control step.

In carrying out the invention and according to a separate aspectthereof, there is provided an information transmitting/receiving systemhaving a transmitting apparatus for transmitting data and a receivingapparatus for receiving the data transmitted from the transmittingapparatus, the transmitting apparatus comprising: encrypting means forencrypting data of a program by use of a predetermined key; firsttransmitting means for transmitting, in a predetermined time zone, thedata encrypted by the encrypting means to the receiving apparatus; andsecond transmitting means for transmitting, to the receiving apparatus,the predetermined key after the predetermined time zone and at a timefor enabling the program to be viewed on the receiving side at a viewingtime intended by the transmitting apparatus; the receiving apparatuscomprising: storage means for receiving and storing the data of theprogram transmitted from the first transmitting means; receiving meansfor receiving the key transmitted from the second transmitting means;and reproducing means for reproducing the program at a viewing time onthe receiving apparatus intended by the transmitting apparatus bydecoding the data of the program stored in the storage means by use ofthe key received by the receiving means.

In carrying out the invention and according to a still separate aspectthereof, there is provided an information transmitting/receiving methodfor an information transmitting/receiving system having a transmittingapparatus for transmitting data and a receiving apparatus for receivingthe data transmitted from the transmitting apparatus, the informationtransmitting/recording method for the transmitting apparatus comprising:an encrypting step for encrypting data of a program by use of apredetermined key; a first transmission control step for controlling thetransmission of the associating information created in the creating stepand the data encrypted in the encrypting step to the receiving apparatusin a predetermined time zone; and a second transmission control step forcontrolling the transmission of the predetermined key to the receivingapparatus after the predetermined time zone and at a time for enablingthe program to be viewed on the receiving side at a viewing timeintended by the transmitting apparatus; the informationtransmitting/receiving method for the receiving apparatus comprising: astorage control step for controlling the reception and storage of thedata of the program in which the transmission is controlled in the firsttransmission control step; a reception control step for controlling thereception of the key in which the transmission is controlled in thesecond transmission control step; and a reproducing step for reproducingthe program at a viewing time on the receiving apparatus intended by thetransmitting apparatus by decoding the data of the program in which thestorage is controlled in the storage control step by use of the key inwhich the reception is controlled in the reception control step.

In carrying out the invention according to a yet separate aspect thereofthere is provided a third recording medium recording a computer-readableprogram for an information transmitting/receiving system having atransmitting apparatus for transmitting data and a receiving apparatusfor receiving the data transmitted from the transmitting apparatus, theprogram for the transmitting apparatus comprising: an encrypting stepfor encrypting data of a program by use of a predetermined key; a firsttransmission control step for controlling the transmission of theassociating information created in the creating step and the dataencrypted in the encrypting step to the receiving apparatus in apredetermined time zone; and a second transmission control step forcontrolling the transmission of the predetermined key to the receivingapparatus after the predetermined time zone and at a time for enablingthe program to be viewed on the receiving side at a viewing timeintended by the transmitting apparatus; the program for the receivingapparatus comprising: a storage control step for controlling thereception and storage of the data of the program in which thetransmission is controlled in the first transmission control step; areception control step for controlling the reception of the key in whichthe transmission is controlled in the second transmission control step;and a reproducing step for reproducing the program at a viewing time onthe receiving apparatus intended by the transmitting apparatus bydecoding the data of the program in which the storage is controlled inthe storage control step by use of the key in which the reception iscontrolled in the reception control step.

In carrying out the invention and according to another aspect thereof,there is provided a third program for a computer for controlling aninformation transmitting/receiving system having a transmittingapparatus for transmitting data and a receiving apparatus for receivingthe data transmitted from the transmitting apparatus, the programcausing the computer for controlling the transmitting apparatus toexecute: an encrypting step for encrypting data of a program by use of apredetermined key; a first transmission control step for controlling thetransmission of the associating information created in the creating stepand the data encrypted by the encrypting step to the receiving apparatusin a predetermined time zone; and a second transmission control step forcontrolling the transmission of the predetermined key to the receivingapparatus after the predetermined time zone and at a time for enablingthe program to be viewed on the receiving side at a viewing timeintended by the transmitting apparatus; the program causing the computerfor controlling the receiving apparatus to execute: a storage controlstep for controlling the reception and storage of the data of theprogram in which the transmission is controlled in the firsttransmission control step; a reception control step for controlling thereception of the key in which the transmission is controlled in thesecond transmission control step; and a reproducing step for reproducingthe program at a viewing time on the receiving apparatus intended by thetransmitting apparatus by decoding the data of the program in which thestorage is controlled in the storage control step by use of the key inwhich the reception is controlled in the reception control step.

As described and according to the invention, in the transmittingapparatus and method and the first program, inputted data are encryptedby use of a predetermined key, the encrypted data are transmitted in apredetermined time zone, and the key is transmitted after thepredetermined time zone to enable the viewing of a program on thereceiving side at a time intended by the transmitting side.

As described and according to the invention, in the receiving apparatusand method and the second program, by use of a transmission channel fortransmitting the data of a first program of a first channel, theencrypted program data transmitted in a predetermined time zone arereceived to be stored as the data of a second program of a secondchannel, a key for decrypting the program data transmitted after thepredetermined time zone and at the time of viewing the second program onthe receiving side intended by the transmitting side is received, thedata of the second program stored are decrypted by the received key, andthe stored data of the second program are decoded for reproduction.

As described and according to the invention, in the informationtransmitting/receiving system and method and the third program, thetransmitting apparatus encrypts program data by use of a predeterminedkey, transmits the encrypted data to the receiving apparatus in apredetermined time zone, and transmits the key to the receivingapparatus after the predetermined time zone and at the time of viewingthe program on the receiving side intended by the transmittingapparatus; and receiving apparatus receives the transmitted program datato store them, decodes the stored program data by use of the receivedkey to reproduce the program at a viewing time on the receivingapparatus side intended by the transmitting apparatus.

BRIEF DESCRIPTION OF DRAWINGS

FIG. 1 illustrates an exemplary configuration of a system fortransferring data.

FIG. 2 illustrates an exemplary internal configuration of a prior-arttransmitting apparatus 1.

FIG. 3 illustrates an exemplary internal configuration of a prior-artreceiving apparatus 3.

FIG. 4 is a flowchart describing an operation of the receiving apparatus3 shown in FIG. 3.

FIG. 5 illustrates a channel.

FIG. 6 illustrates programs.

FIG. 7 illustrates organization data.

FIG. 8 illustrates an exemplary internal configuration of a transmittingapparatus 1 practiced as one embodiment of the present invention.

FIG. 9 illustrates channels.

FIG. 10A illustrates a band.

FIG. 10B illustrates a band.

FIG. 10C illustrates a band.

FIG. 11 illustrates channels.

FIG. 12 illustrates organization data.

FIG. 13 illustrates a preloading schedule.

FIG. 14 illustrates the transmission of commands.

FIG. 15 illustrates the provision of preloaded programs.

FIG. 16 is a flowchart describing a direct transmission operation to beexecuted by the transmitting apparatus 1.

FIG. 17 is a flowchart describing a preloading operation to be executedby the transmitting apparatus 1.

FIG. 18 is a flowchart describing an operation for the transmittingapparatus 1 to provide preloaded programs.

FIG. 19 illustrates an exemplary internal configuration of a receivingapparatus 3 practiced as one embodiment of the present invention.

FIG. 20 is a flowchart describing a display control operation to beexecuted by the receiving apparatus 3.

FIG. 21 is a flowchart continued from the flowchart shown in FIG. 20.

FIG. 22 is a flowchart describing an operation to be executed when thereceiving apparatus 3 receives preloaded program data.

FIG. 23 illustrates recording media.

BEST MODE FOR CARRYING OUT THE INVENTION

The following describes embodiments of the present invention withreference to drawings. The following describes an example in which thepresent invention is applied to the system composed of the transmittingapparatus 1, the satellite 2, and the receiving apparatus 3 shown inFIG. 1. FIG. 8 illustrates a configuration of a transmitting apparatus 1to which the present invention is applied. With reference to FIG. 8,components similar to those of conventional transmission apparatus 1previously described with reference to FIG. 2 are denoted by the samereference numerals and the description of these components will beskipped.

The transmitting apparatus 1 has a VTR cart 61 which is the same inconfiguration as the VTR cart 14. A video output terminal and an audiooutput terminal of the VTR cart 61 are connected to a video encoder 62and an audio encoder 63 respectively. The outputs of the video encoder62 and the audio encoder 63 are supplied to a multiplexing section 64.The output of the multiplexing section 64 is supplied to a server 65.

The multiplexing section 64 performs time-division multiplex on thesupplied signal. For the scheme of time-division multiplexing by themultiplexing section 64, MPEG2 TS (ISO13818-1) for example is available.Since the multiplexing performed by the multiplexing section 64 has onlytwo inputs, PID is fixed, and there is no information such as PSI, thecontrolling section (the control section corresponding to themultiplexing control section 19 for controlling the multiplexer 17) neednot be arranged to control the multiplexing section 64.

The output of the multiplexing section 64 is also supplied to anintra-picture detecting section 66. The intra-picture detecting section66 detects the positions of intra-pictures according to the supplied bitstream. For all detected intra-pictures, data of combinations of timeoffset and byte offset from the beginning of the bit stream aregenerated to be supplied to the server 65. These data are referred to asa “positional information file.” The server 65 stores the positionalinformation file.

The output of the server 65 is supplied to the multiplexer 17 via aencrypting section 67 and a switch 68. The control section 11 suppliesto the encrypting section 67 a key for encryption. The control section11 also supplies a decryption key and other information to themultiplexer 17 via the switch 68. The positional information file storedin the server 65 or the key and other information supplied from thecontrol section 11 are multiplexed with the transport stream to besupplied to the receiving apparatus 3. The multiplexer 17 is alsosupplied with data called control commands from the control section 11.

The control section 11 also supplies control commands for controllingthe supply and provision of programs to be provided in advance. The datato be supplied to the multiplexer 17 via the switch 68 are referred toas a data stream. It should be noted that the bit rate of the data to betransferred from the multiplexer 17 to the ECC/modulating section 20 is24 Mbps.

The following describes an operation of the transmitting apparatus 1shown in FIG. 8. In the transmitting apparatus 1 shown in FIG. 8, twotypes of broadcasting (or provision forms) are available; one is thenormal broadcasting in which transmitted programs can be viewed in realtime on the receiver side; and the other is a broadcasting in whichtransmitted programs cannot be viewed in real time but programs viewablein prime time are transmitted to the receiving apparatus 3 in advance innon-prime time zones.

The following describes these two types of broadcasting. It should benoted that the transmission in which programs transmitted in real timecan be viewed is referred to as broadcasting, while the transmission inwhich programs transmitted in real time cannot be viewed is referred toas provision.

FIG. 9 illustrates a channel configuration of the transmitting apparatus1. In this example, two channels are used in a prime time (four hoursfrom 19:00 to 23:00 in this example) and one channel is used in othertime zones. It should be noted that, in the description below, a channelhaving a plurality of program channels is referred to as a transmissionchannel and a channel denotes a program channel which can be viewed byuser.

A program of channel A, which is a program channel, is viewable on thereceiving side for 24 hours. A program of channel B can be viewed on thereceiving side only in the prime time.

The channel configuration illustrated here is only one example. Forexample, a configuration of three channels by three channels (threechannels for 24 hours+three channels in prime time, totaling sixchannels).

FIGS. 10A through 10C are used to describe bands. FIG. 10A shows a totalof bandwidths of programs to be provided herein. Namely, a total of 8Mbps from 0:00 am to 6:00 am, 24 Mbps from 6:00 am to 7:00 pm, 48 Mbpsfrom 7:00 pm to 11:00 pm, and 24 Mbps from 11:00 pm to 0:00 am. Itshould be noted that the band prepared as broadcasting facilities is 24Mbps all day as described before. This value denotes the bit rate beforeerror correction and modulation.

Hence, of the two channels to be provided in the prime time, the band(data) for one channel is provided to the receiving apparatus 3 inadvance and stored in the receiving apparatus 3. Referring to FIG. 10B,the bandwidth which can be transmitted in the prime time is 48 Mbps, butthe band which can be transmitted in real time is 24 Mbps. Therefore,the data of 4 hours×(48−24) Mbps are transmitted to the receivingapparatus 3 in advance and stored in the receiving apparatus 3.

For this reason, 16 Mbps (=24×4/6) of 24 Mbps are used for thetransmission of the storage data in six hours from 0:00 to 6:00 in themorning. As a result, a bandwidth of 8 Mbps remains unused for thechannel in the time zone from 0:00 to 6:00. It should be noted that thissetting is illustrative purpose only; practically, more complicated bandtrade may be performed. Generally, a total of the bandwidths in whichdata can be preloaded must be greater than the amount of program data tobe transmitted.

If the expiration of use of the data stored in the receiving apparatus 3no more than one day, the following inequality is established in a timezone from 0:00 to 0:00 next day:

“A total of bandwidths in which program data to be preloaded”>“amount ofprogram data to be provided”

For the purpose of convenience, the transmission of a program forviewing in prime time to the receiving apparatus 3 in advance isreferred to as “preloading” and the transmission of the program in realtime is referred to as “direct transmission.” “Channel” and “program” tobe preloaded are referred to as “preloaded channel” and “preloadedprogram” and “channel” and “program” to be transmitted in real time arereferred to as “direct transmitted channel” and “direct transmittedprogram.”

In this example, of the two channels to be viewed in the prime time, thedata of channel A are transmitted in direction transmission as a whole,while the data of channel B are transmitted in preloading as a whole. Tobe more specific, the programs of channel A are “direct-transmitted”over 24 hours, while the programs of channel B, which exist for fourhours a day, are all “preloaded.”

Referring to FIG. 10B, each of the programs of channel A isdirect-transmitted at a bit rate of 8 Mbps in time zone from 0:00 to6:00 and a bit rate of 24 Mbps in time zone from 6:00 to 24:00 (0:00).Each of the programs of channel B is preloaded at a bit rate of 16 Mbpsin time zone from 0:00 to 6:00 to the receiving apparatus 3 and storedtherein to be provided (made viewable) in time zone from 19:00 to 23:00.

Referring to FIG. 10C, in time zone from 0:00 to 6:00 in October 9 forexample, data A-1, A-2, . . . which are program data of channel A, whichis a program channel, and data B-1, B-2, . . . which are program data ofchannel B, which is a program channel, are transmitted to the receivingapparatus 3 in one transmission channel.

In time zone from 6:00 to 0:00 (24:00), only data A-1, A-2 . . . whichare program data of channel A, which is a program channel, aretransmitted to the receiving apparatus 3 in one transmission channel.

FIG. 11 illustrates a portion around the prime time of October 10 shownin FIG. 9, which is enlarged, with program divisions and program namesadded. As shown in FIG. 11, channel A provides “program A” in time zonefrom 18:00 to 19:00 in October 10. Likewise, “program B” is provided intime zone from 19:00 to 20:00, “program C” is provided in time zone from20:00 to 21:00, and “program D” is provided in time zone from 21:00 to23:00. Channel B provides “program X” in time zone from 19:00 to 21:00and “program Y” in time zone from 21:00 to 23:00.

The organization data corresponding to the program provision(broadcasting) schedule shown in FIG. 11 is shown in FIG. 12. Theorganization data are configured by records of a plurality of programs.In configuration, the organization data are obtained by attaching a flagindicative of whether or not each program is for direct transmission orpreloading to the configuration having only channel A as shown in FIG.7. In the organization data shown in FIG. 12, the programs of channel Aare all direct-transmitted, while the programs of channel B are allpreloaded.

The programs of channel B which must be preloaded must be created inadvance. The programs of channel A are transmitted in real time over 24hours including the prime time. Therefore, the programs of channel A maybe live (namely, need not be created beforehand).

FIG. 13 illustrates the schedule on the transmitting apparatus 1 sideassociated with channel B which must be preloaded. The schedule shown inFIG. 13 is about the programs to be provided from 19:00 to 23:00 inOctober 10. This schedule holds the same with other days in relativeprogram relationships with date offsets caused, so that the schedules ofother days will be skipped.

It should be noted that a more flexible operation is performed in anemergency for example, thereby providing programs by changing theschedule in advance.

First, the organization data associated with a program concerned (apreloaded program concerned) is inputted in the transmitting apparatus 1by at least one week before the provision. In this example, theorganization data of October 10 are inputted by October 2. Likewise, theorganization data associated with direct-transmitted programs areinputted by one week before the date of broadcasting. It should be notedthat one week is a period for a smooth post-processing operation, sothat this period need not be one week as far as the smoothpost-processing operation is ensured.

When the organization data are inputted, one file name is determined forone program to be preloaded. This file name is used to identify the data(the file) of each program in the transmitting apparatus 1 and thereceiving apparatus 3. The organization data are transmitted from thetransmitting apparatus 1 to the receiving apparatus 3 as EPG data atcertain intervals starting one week before the date of provision untilthe time of provision.

In the present embodiment, two routes of EPG information are arranged.On one route, only the EPG information for direct-transmitted programsis transmitted. On the other route, the EPG information for bothdirect-transmitted and preloaded programs are transmitted. Namely, theEPG information associated with direct-transmitted programs istransmitted by both schemes of the routes, while the EPG informationassociated with preloaded programs is transmitted only by the latterscheme of the route. For the preloaded programs, their file names aretransmitted together.

In this arrangement of two routes for EPG information transmission asdescribed above, one route is arranged for the receiving apparatus 3which cannot accept preloading, namely the receiving apparatus 3 havingno storage device for storing preloaded program data, of which detailwill be described later, while the other route is arranged for thereceiving apparatus 3 which can accept preloading.

The receiving apparatus 3 displays the received EPG data to the user,who can perform the processing such as program presetting for example onthe basis of these data.

When the inputting of organization data into the transmitting apparatus1 has been completed, the VTR tape recording the program to be preloadedis closed for deadline. The VTR tape recording the content of preloadedprogram is prepared until about 9:00 the day before the day of programprovision. In this example, two VTR tapes corresponding to two programs“program X” and “program Y” shown in FIG. 11 are prepared and stored inthe VTR cart 61 in the transmitting apparatus 1 by 9:00 of October 9.

Starting at 9:00 the day before the day of program provision, eachprogram to be preloaded is encoded to create a “stream file.”Preferably, the encoding has been completed during the day before theday of program provision. Therefore, in consideration of the timerequired for the encoding, the program data to be preloaded havepreferably been created by 9:00 the day before preloading. Obviously, ifa time for the encoding can be sufficiently allocated, the creation ofthe program data may have been completed after 9:00 the day beforepreloading.

At this moment, a “positional information file” listing intra-picturepositions is created. This is because the encoding based on variablerates in video encoding requires the information for making conversionfrom temporal information into positional information. In the presentembodiment, if MPEG2 is used for video data encoding, the data listingthe temporal information and positional information for eachintra-picture are created.

Before encoding program data, the bit rate of each program isdetermined. The bit rate may be determined before starting the encodingor while encoding. It is also practicable to set an average bit rate totwo or more different programs or different bit rates may be used withina single program. Any scheme may be used for bit rate determination.

The transmission of a program to be preloaded, namely a stream file, tothe receiving apparatus 3 starts from 0:00 of the day of programprovision. As described with reference to FIGS. 10A through 10C, thisevent starts at 0:00 and ends at 6:00. First, the transmitting apparatus1 issues to the receiving apparatus 3, an all-delete command fordeleting all of the program data stored in the receiving apparatus 3.

The receiving apparatus 3 internally has a storage device for storingthe program data preloaded, of which details will be described later.Upon reception of an all-delete command, the receiving apparatus 3deletes the data from that storage device to make it ready for storingnew data. In this case, the data to be deleted are those associated withthe program (the program viewable in the prime time) provided in theprime time of October 9. Thus, the program data to be stored in thereceiving apparatus 3 in the present embodiment are stored only for oneday (in this case, the data for four hours of channel B), which areupdated during night.

After issuing an all-delete command, the transmitting apparatus 1transmits a stream file obtained by encoding a program. Next, thetransmitting apparatus 1 transmits a positional information filecorresponding to the transmitted stream file. The transmission of thesetwo types of files is repeated by the number of programs. At thismoment, the stream file is encrypted before transmission. The receivingapparatus 3 receives the encrypted stream file and records it as it is.The positional information file is transmitted without being encrypted.

Thus, the preloaded program data transmitted are received by thereceiving apparatus 3 at a time prior to the prime time. Provision ofthe stored program data starts from 19:00 set as the prime time of theday of provision and becomes viewable. Namely, the transmittingapparatus 1 transmits time information, program information, and a keyto the receiving apparatus 3. The key is used to decrypts the encryptedfile.

When the user selects a preloaded program at the receiving apparatus 3,the receiving apparatus 3 identifies the file by the file name suppliedwith the EPG, decrypts the file by the supplied key, and provides theselected program to the user in synchronization with the supplied timeinformation.

The following describes the preloading in more detail. In order totransmit a preloaded program, the present embodiment uses two streams intransport stream. One is a control stream for controlling preloading.The other is a data stream for use in downloading a stream file and apositional information file at program preloading. The data stream isalso used to transmit time information and the key at program provision.

The procedure of the preloading will be described in further detail withreference to FIG. 14. At time t1, the transmitting apparatus 1 transmitsan “all-delete command” in the control stream. Receiving this command,the receiving apparatus 3 deletes all files which have been preloadedand stored therein. This deletion allocates a free space necessary foraccommodating files to be preloaded in the receiving apparatus 3.

Therefore, as with the present embodiment, if data to be preloaded arethe program data for four hours in one channel, then the receivingapparatus 3 may arrange a storage device having a storage capacityenough for that amount of data.

Next, at time t2, the transmitting apparatus 1 transmits a “bodydownload” command in the control stream. This command indicates thetransmission of a stream file in the data stream after a predeterminedtime. This command contains the name (file name) and size of the streamfile to be transmitted. Receiving the body download advance noticecommand, the receiving apparatus 3 makes preparations for downloadingthe stream file.

At time t3, the transmitting apparatus 3 starts transmitting the streamfile in the data stream. The stream file is encrypted beforetransmission. The receiving apparatus 3 stores the received file intoits storage device. At this moment, the stored file is managed by thefile name specified by the body download advance notice command.

At time t4, the transmitting apparatus 1 transmits a “positionalinformation download advance notice” command in the control stream. Thiscommand indicates the transmission of a positional information fileafter a predetermined time in the data stream. This command contains thename (file name) and size of the positional information file to betransmitted. Receiving the “positional information download advancenotice” command, the receiving apparatus 3 makes preparations for thedownloading of the positional information file.

At time t5, the transmitting apparatus 1 starts transmitting the“positional information file” in the data stream. The positionalinformation file is transmitted without being encrypted. The receivingapparatus 3 stores the received data into its storage device. At thismoment, the stored positional information file is managed by the filename specified by this “positional information download advance notice”command.

By the above-mentioned sequence of operations, one of the two programfiles which must be transmitted in advance, that is the two files forone program have been transmitted to the receiving apparatus 3, so thatthe files for the second program are transmitted. To be more specific, asequence of operations are executed; at time t6, a “body downloadadvance notice” command is transmitted, at time t7, the transmission ofa “stream file” starts, at time t8, a “positional information downloadadvance notice” command is transmitted, and, at time t9, thetransmission of a “positional information file” starts.

It should be noted that, in the present embodiment, each command istransmitted only once; however each command may be transmitted overseveral times to build a system which is robust againsttransmission-system errors. Also it should be noted that the time shownin FIG. 14 (in the upper portion of the figure) and the times t1 throught9 (shown in the lower portion of the figure) are not corresponding toeach other; for example, at time t6, a “body download” command istransmitted at 3:00. However, this command may be transmitted at otherthan 3:00 as long as the command can be transmitted in the flow of theprocessing.

The information stored in the receiving apparatus 3 immediately beforethe provision of a preloaded program is as follows. EPG information istransmitted one week before. EPG data have channel, program name,program start time, duration of time, information distinguishing betweenpreloading and direct transmission, and so on. For each preloadedprogram, a file name is also added. Further, for each preloaded program,a “stream file” and a “positional information file” have been loadedbeforehand.

The following describes the provision of preloaded programs (theprocessing for making these programs viewable to users) with referenceto FIG. 15. At the provision time of preloading, no control stream isused; only a data stream is used.

First, at time t21 slight before a preloaded program provision time (inthis example, 19:00), the transmitting apparatus 1 starts transmittingtime information to the receiving apparatus 3. This is because the timeinformation held in the receiving apparatus 3 must be matched with thetime information held in the transmitting apparatus 1. It is not yet thetime of program provision, so that meaningless values are transmittedfor the file name and the key. The transport packet is attached with aPCR.

When the program provision time of time t22 (in this example, 19:00) hasbeen reached, the transmitting apparatus 1 transmits in the data streamthe file name for program X and the encryption key used for encryptingthe stream file, in addition to the time information.

When a program switching time of time t23 (in this example, 21:00) hasbeen reached, the transmitting apparatus 1 switches the information tobe transmitted to the file name and encryption key corresponding toprogram Y. Namely, subsequent to time t23, the transmitting apparatus 1transmits in the data stream the time information, the file name ofprogram Y, and the encryption key used for encrypting the stream file ofprogram Y. At time t24, the transmission of the time information andother information comes to an end.

On the side of the receiving apparatus 3, if the user selects apreloaded program channel on the basis of the EPG information or newsand magazine information before starting the program concerned, thereceiving apparatus 3 performs the above-mentioned operation in the likemanner at the specified time on the basis of a timer operation forexample.

The receiving apparatus 3 references the EPG information to determinewhether or not the program is a preloaded program. If the program isfound not a preloaded program, this program is processed in theconventional manner. If the program is found a preloaded program, thenthe receiving apparatus 3 instructs the tuner to select the preloadeddata stream. In this stream, the time and key data are transmitted. Thetime information contains current time, program start time, the filename for use in the program concerned, and the decryption key.

At the same time, the PCR extracted from the transport packet concernedis used to synchronize the clock of the receiving apparatus 3 with theclock of the broadcast station. The receiving apparatus 3 computes thedifference between the current time and the program start time. Thecomputed difference denotes a elapsed time from the start of theprogram. Hence, a position after skipping by the computed time issearched for from the beginning of the file stored in advance to startreproduction from the found skip position.

By use of the elapsed time and “information of positional informationfile,” the receiving apparatus 3 obtains the position corresponding tothe current time in the stream file. The data are read from thecorresponding position in the stream file, the data are decrypted, andthe decrypted data are decoded to output video and audio signals. Thus,each preloaded stream file stored in the receiving apparatus 3 issynchronized with the clock transmitted from the broadcasting station tobe reproduced.

The following describes the format of EPG data. Shown below is theformat of EPG data as a table 1.

TABLE 1 for EPG No. of Bits payload( ) { num_of_ch 8 for(i=0;i<num_of_ch;i++) { num_of_programs 8 for (j=0;j<num_of_programs) {DIRECT_or_PRE-LOAD 8 month 8 day 8 start_time_hour 8 start_time_min 8length_hour 8 length_min 8 len_program_name 8 for(i=0;i<len_program_name;i++) { program_name_data 8 } if(DIRECT_or_PRE-LOAD==DIRECT) { } if (DIRECT_or_PRE-LOAD==PRE-LOAD) {len_filename 8 for (i=0;i<len_filename;i++) { filename_data 8 } }attribute_length 8 for (j=0;j<attribute_length;j++) { attribute_data 8 }} } for (stuffing) { stuffing_byte 8 }

Since the EPG is stored in the transport packet, the format is definedwith a transport packet data storage portion (the portion of data_byte)being payload( ). It should be noted that each transport packet has arelatively short, 188 bytes long as a whole, so that for thetransmission of the EPG data for one week, a plurality of transportpackets are transmitted.

The following describes the above-mentioned EPG data format. At thebeginning of payload( ), the number of channels (num_of_ch) is arranged.In payload( ), EPG data are described collectively for each channel and,subsequent to the number of channels (num_of_ch), the information abouteach channel is repeated by the number of channels (num_of_ch).

At the beginning of the information about each channel, the number ofprograms (num_of_programs) is arranged. This indicates the number ofprograms of EPG data included in the structure for each channel.Subsequently, the information about each program is repeated by thenumber of programs (num_of_programs).

At the beginning of the information about each program, a flag(DIRECT_or_PRE-LOAD) indicative of whether or not the program isdirectly transmitted or preloaded. Subsequently, the date on which theprogram is provided is represented in month (month), day (day), andstart time in hour (start_time_hour) and minute (start_time_min).Subsequently, the length of the program is represented in time in hour(length_hour) and minute (length_min). Subsequently, the program name(program_name) is located.

Subsequently, the file name is arranged for a preloaded program only.

Lastly, attribute data are located. These attribute data include programexplanation for example. If all the above-mentioned information does notfill up payload( ), then it is filled with stuffing bytes.

The following describes the control commands which are transmitted in apreload control stream. Shown below is the format of the controlcommands as a table 2.

TABLE 2 Control commands No. of Bits palyload( ) { command_flag 8 if(command_flag==‘0000 0001’ { //command 1 - all delete  } if (command_flag==‘0000 0010’) { //command 2 - body download advance noticelen_filename 8 for (i=0;i<len_filename;i++) { filename_data 8 } size 64} if (command_flag==‘0000 0011’ { //command 3 - positional informationdownload advance notice len_filename 8 for (i=0;i<len_filename;i++) {filename_data 8 } size 64 } for (stuffing) { stuffing_byte 8 } }

Since the above-mentioned control commands are stored in each transportpacket and transmitted, the format is defined with the transport packetdata storage section (the portion of data_type) being payload( ). Itshould be noted that each transport packet has a relatively shortconstruction, 188 bytes in total and each command defined here issmaller than 188, so that one transport packet is occupied by onecontrol command, the remaining portion of payload( ) is filled withstuffing bytes.

The following describes the formats of the above-mentioned controlcommand. At the beginning of payload( ), information indicative of thetype of this command (command_flag) is arranged. If the valuecommand_flag is ‘00000001,’ it indicates the “all delete command; if thevalue is ‘00000010,’ it indicates the “body download advance notice”;and if the value is ‘00000011,’ it indicates the “positional informationdownload advance notice.”

Since the “all delete command” (command_flag=‘00000001’) has noargument, payload( ) of this transport packet is filled with stuffingbytes.

In the case of “body download advance notice command”(command_flag=‘00000010’), the file name (len_filename andfilename_data) and its size (size) are arranged, the remaining portionbeing filled with stuffing bytes.

In the case of “positional information download advance notice command”(command_flag=‘00000011’), the file name (len_filename andfilename_data) and its size (size) are arranged, the remaining portionbeing filled with stuffing bytes.

The following describes the formats of signals which are transmitted inthe data stream at preloading and preloaded program provision. Shownbelow are the signal formats as table 3.

TABLE 3 For data/time and key No. of bits payload ( ) { command_flag 8if (command_flag==‘0000 1001’ { // command 9 - download data num_of_data8 for (i=0;i<num_of_data;i++) { data_byte 8 } } if (command_flag==‘00001010’) { // command 10 - key PTS 33 year 16 month 8 day 8 hour 8 minute8 second 8 len_filename 8 for (i=0;i <len_filename;i++) { filename_data8 } start_time_hour 8 start_time_min 8 length_hour 8 length_min 8 key128 } for (stuffing) { stuffing_byte 8 } }

Since the above-mentioned data to be transmitted at preloading andpreloaded program provision are stored in each transport packet andtransmitted, each format is defined with the transport packet datastorage portion (the portion of data_byte) being payload( ). It shouldbe noted that each transport packet has a relatively short structure,188 bytes in total, so that many transport packets are used for filedownloading to transmit the data.

The following describes the above-mentioned data formats. At thebeginning of payload( ), information (command_flag) indicative data typeis arranged. If the value of command_flag is ‘0000 1001,’ it indicatesdownload data; if the value is ‘0000 1010,’ it indicates “key and time.”

In the case of “download data,” command_flag is followed by the numberof pieces of data (num_of_data), which is followed by the data bytes forthe number of pieces of data (num_of_data). If payload( ) has still afree space so far, which is filled with stuffing bytes (stuffing).

In the case of “key and time,” command_flag is followed by a PTS(Presentation Time Stamp). The PTS denotes the timing of “current time”arranged following the PTS.

Subsequently, year (year), month (month), day (day), hour (hour), minute(minute), and second (second) of the current time are arranged.Subsequently, file names (len_filename, filename_data) for use in theprogram concerned, start time of the program concerned (start_time_hour,start_time_min), and length of the program concerned (length_hour,length_min) are arranged. Lastly, a key (key) for decrypting theencrypted data is arranged. If the information so far still has a freespace, it is stuffed by bytes (stuffing).

The following describes how to use “PTS” and “current time.” Thereceiving apparatus 3 holds a STC synchronized with the PCR of thetransport stream. This is because the clock of the transmittingapparatus 1 must be synchronized with the clock of the receivingapparatus 3. When the PTS becomes equal to the STC, it indicates thetime indicated by the value of “current time,” upon which the receivingapparatus 3 sets its internal clock at that moment. Also, by obtaining adifference between the current time and the start time of the programconcerned, an elapsed time from the start of the program concerned canbe recognized.

The following describes the format of a positional information file.Shown below is the format of a position information file as table 4.

TABLE 4 Positional information file No. of Bits location_file ( ) {num_entry 32 for (i=0;i<num_entry;i++) { offset_hour 8 offset_minute 8offset_second 8 offset_frame 8 offset_byte 64 } }

The following describes the format of the above-mentioned positionalinformation file. At the beginning, the number of entries (num_entry) isarranged, indicating the number of entries contained in the positionalinformation file. The information for each entry contains offset fromthe beginning of the stream file, namely an elapsed time form thebeginning, in the order of hour (offset_hour), minute (offset_min),second (offset_min), and frame (offset_frame). Lastly, a byte offset(offset_byte) from the beginning of “stream file” is arranged.

It should be noted that the entries are arranged in the order ofappearance from the beginning of the stream, namely in the ascendingorder of time and byte offset.

The following describes the operations of the transmitting apparatus 1shown in FIG. 8 which handles the data of the above-mentioned format. Inthe present embodiment, the transmitting apparatus 1 performs thebroadcasting (conventional broadcasting) of programs which can be viewedon the receiving side in real time and the provision of receivedprograms which can be viewed not in real time but when a predeterminedtime has been reached on the receiving side. First, the operation of thetransmitting apparatus 1 at program broadcasting will be described withreference to the flowchart of FIG. 16.

In step S11, the administrator of the transmitting apparatus 1 storesthe organization data as shown in FIG. 12 into the memory 12 (FIG. 8) ofthe control section 11. Content to be broadcast at each timing isrecorded to a VTR tape, which is set to the VTR cart 14.

Although the facilities for performing live broadcasting is now shown inthe transmitting apparatus 1 shown in FIG. 8, when performing livebroadcasting, the outputting of video and audio signals may be started,upon reaching a predetermined time, from a broadcast recording studio(not shown) installed in parallel to the VTR cart 14, instead of settinga VTR tape recording the program to the VTR cart 14, thereby supplyingthe video and audio signals to the video encoder 15 and the audioencoder 16 respectively. In the following description, an example isused in which non-live broadcasting is performed.

In step S12, the control section 11 supplies the information at leastone week beyond the date concerned from the organization data stored inthe memory 12 to the EPG generating section 18. Therefore, theadministrator of the transmitting apparatus 1 must set the organizationdata shown in FIG. 12 to the control section 11 (store in the memory 12)at least one week before the provision of the program concerned. The EPGgenerating section 18 accumulates the supplied information, converts theinformation into the EPG format used in the transmitting apparatus 1,and supplies the converted information to a terminal K3 of themultiplexer 17. It should be noted that any EPG may be used; thereforethe EPG already in use may be used.

In step S13, the control section 11 references its internal clock 13and, in accordance with the organization data, operates the VTR cart 14to supply the contents of the program to the encoders. To be morespecific, the control section 11 references and compares the internalclock 13 with the organization data in the memory 12 to determine aprogram to be reproduced next. Then, the control section 11 indicatesthe program name to the VTR cart 14 before the start time of theprogram, putting the VTR cart 14 into the reproduction standby state.

Upon reception of the indication of the program name, the VTR cart 14identifies the VTR tape recorded with that program, loads this VTR tapeinto an internal video reproducing device by internal carrying device,and waits for a next instruction. Generally, during this time, anothervideo reproducing device in the VTR cart 14 is reproducing an on-airprogram, and supplying the reproduction signal to the encoders.

In step S14, when the start time of this program has been reached, thecontrol section 11 instructs the VTR cart 14 to reproduce this program.The VTR cart 14 puts the prepared VTR reproducing device into thereproduction state, making the same output signals. The video dataoutputted from the VTR cart 14 are supplied to the video encoder 15 tobe encoded into MPEG2 video format, and the resultant video data issupplied to the terminal K4 of the multiplexer 17. The audio dataoutputted from the VTR cart 14 are supplied to the audio encoder 16 tobe encoded into MPEG2-AAC format, and the resultant audio data issupplied to the terminal K5 of the multiplexer 17.

In step S15, instructed by the control section 11, the multiplexingcontrol section 19 controls the multiplexer 17. To be more specific, thecontrol section 11 supplies to the multiplexing control section 19information including the number of programs to be simultaneouslybroadcast (1 in this example) and the number of video/audio streams forthe program (1 each in this example), thereby determining the PID ofeach stream. The PID for transmitting PCR is also determined. The PIDinformation is also supplied to the multiplexer 17. Further, themultiplexing control section 19 generates the PSI for use in thereceiving apparatus 3 and supplies the generated PSI to the terminal K1of the multiplexer 17.

The multiplexer 17 performs time-division multiplexing on the suppliedsignals, namely the PSI supplied at the terminal K1, the PCR supplied atthe terminal K2, the EPG supplied at the terminal K3, the video streamsupplied at the terminal K4, and the audio stream supplied at theterminal K5 by the MPEG2 TS (ISO013818-1) scheme.

In step S16, the output of the multiplexer 17 is added with an errorcorrection code by the ECC/modulating section 20 and then modulated. Theresultant signal is amplified by the amplifying section 21 to beradiated from the antenna 22.

While the above-mentioned broadcasting is performed, the above-mentionedpreloading is performed to provide programs to the user. The followingdescribes the operation of the transmitting apparatus 1 shown in FIG. 8associated with preloading with reference to the flowchart shown in FIG.17.

In step S21, the organization data associated with each program arestored by the administrator of the transmitting apparatus 1 into thememory 12 of the control section 11 along with direct-transmittedprograms and preloaded programs by one week before the date of programprovision. The process in step S21 is the same as that of step S11 ofthe flowchart shown in FIG. 16 and executed at the same time.

When storing the organization data, the control section 11 defines aunique (not duplicate) file name to each of the preloaded programs andstores this file name in the memory 12. The file names may be defined inany manner as long as they do not duplicate with each other. Forexample, the programs may be numbered in a sequential manner. It isassumed here that file name “program x” be defined for “program X” andfile name “program y” be defined for “program Y.”

Of the organization data stored in the memory 12, the control section 11needs to process the organization data for channel A, the organizationdata for a program data to be provided in a direct-transmitted channelin this example, as described with reference to the flowchart shown inFIG. 16, while the control section 11 needs to process the organizationdata for channel B, namely the organization data for a program data tobe provided in a preloaded channel in this example, at the same time.

Namely, in step S22, for the program to be provided in channel B, thecontrol section 11 enters into an EPG generating section 69 theinformation for one week beyond the date concerned from the organizationdata and the file name information for preloading program stored in thememory 12. At this moment, the information of both the preloaded program(channel B) and the direct-transmitted program (channel A) is entered.The EPG generating section 69 accumulates the entered information,converts the information into the above-mentioned EPG format, andsupplies the resultant information to the terminal K6 of the multiplexer17.

By use of the predetermined PID value for a new EPG, the multiplexer 17stores the EPG information supplied to the terminal K6 into thetransport packet and multiplexes the EPG information with other inputsignals to output the information. The other input signals include thedata of the direct-transmitted program being broadcast at that moment.

Thus, the EPG generated in the transmitting apparatus 1 includes the EPGgenerated by the EPG generating section 18 and the EPG generated by theEPG generating section 69. Namely, in order to provide compatibilitywith any receiving apparatus, having no device for storing program data,such as a hard disk, there are provided the conventional EPG generatedby the EPG generating section 18 and the EPG generated by the EPGgenerating section 69 in the corresponding receiving apparatus.

The output from the multiplexer 17 is supplied to the ECC/modulatingsection 20 to be added with an error correction code and modulated. Theoutput from the ECC/modulating section 20 is supplied to the amplifyingsection 21 to be amplified in electric power and the amplified signal isoutputted from the antenna 22 as a radio wave. By repetitively executingthe above-mentioned processing, the organization data are transmitted asEPG data at predetermined intervals from one week before the date ofprogram provision to the time of provision. The receiving apparatus 3presents the received EPG data to the user for use in applications suchas program presetting for example.

In step S23, as described with reference to FIG. 13, the administratorof the transmitting apparatus 1 accommodates in the VTR cart 61 the VTRtape recorded with the contents of preloaded program by 9:00 on the daybefore the day of program provision. In this example, two VTR tapescorresponding to two programs “program X” and “program Y” are preparedby 9:00 on October 9, which are accommodated in the VTR cart 61dedicated to preloading.

In step S24, the encoding of the preloaded program starts from 9:00 onthe day before the day of program provision. First, the control section11 determines the bit rate of each program. In this case, it is assumedthat the encoding is executed with a fixed bit rate of 24 Mbps for eachof the programs (in this example, two programs).

The control section 11 specifies bit rates of 22 Mbps and 0.3 Mbps forexample for the video encoder 62 and the audio encoder 63. The remainderof 24 Mbps is consumed by a multiplexing overhead for example, and theremainder thereof is stuffed by bytes.

The control section 11 instructs the video encoder 62 and the audioencoder 63 to prepare for encoding. At the same time, the controlsection 11 instructs the VTR cart 61 to reproduce the contents of“program X.”

Further, the control section 11 instructs the server 65 to store theoutput from the multiplexing section 64 as “program X.pre” and theoutput from the intra-picture detecting section 66 as “program X.cpi.”

The contents of program X reproduced by the VTR cart 61 are encoded bythe video encoder 62 into MPEG2 video format and by the audio encoder 63into MPEG2 AAC format, and the resultant contents are supplied to themultiplexing section 64.

The multiplexing section 64 performs time-division multiplexing on theinputted video stream and audio stream by MEPG2 TS. At this moment, apredetermined value is applied to the PID of each transport packet fortransporting each stream. The stream file which is the output from themultiplexing section 64 is supplied to the server 65 and stored thereinwith a predetermined file name “program x.pre.”

The output from the multiplexing section 64 is also supplied to theintra-picture detecting section 66. The intra-picture detecting section66 analyzes the supplied multiplexed stream to detect an intra-pictureposition, thereby creating the above-mentioned “positional informationfile.” The created positional information file is supplied to the server65 and stored therein with file name “program x.cpi.”

When the encoding of “program X” has been completed, the control section11 starts encoding “program Y,” the next program. The encoding of“program Y” is performed in the same manner as “program X”; eventually,the stream file is stored in the server 65 with file name “programy.pre” and the positional information file is stored with file name“program y.cpi.”

The control section 11 performs the above-mentioned processing on allpreloaded programs. In this case, there are two preloaded programs, sothat the processing is performed on two programs “program X” and“program Y.” The encoding of the preloaded programs has been preferablycompleted at least by the day before the day of provision.

It should be noted that the encoding may be performed with averagedifferent bit rates on different programs. By setting the importance ofprogram and required picture quality for example to the control section11 by the administrator, the control section 11 may instruct the videoencoder 62 and the audio encoder 63 to use the different bit rates.

It should be noted that the encoding of variable rates may be performedin one program. In this type of encoding, a program in its entirety isonce supplied from the VTR cart 61 to the encoders (the video encoder 62and the audio encoder 63) to detect (or determine) the difficulty ofeach scene and then the program in its entirety is supplied to theencoders again for encoding, the detail description of this type ofencoding being skipped. For the type of encoding, the method disclosedin Japanese Patent Laid-open No. Hei 6-153152 may be applied forexample.

In step S25, preloading starts. Namely, the preloading of a preloadedprogram to the receiving apparatus 3 starts from 0:00 the day of programprovision (the day on which the user can view the program). Thepreloading processing is performed in the same manner as described withreference to FIG. 14.

To transmit a preloaded program, two streams on the transport stream areused in the present embodiment. One stream is the control stream whichis used for controlling preloading. In the transmitting apparatus 1shown in FIG. 8, the control section 11 generates this stream andsupplies it to the terminal K7 of multiplexer 17 to be multiplexed withthe transport stream.

The second stream is the data stream. In the transmitting apparatus 1shown in FIG. 8, at preloading, “stream file” and “positionalinformation file” are supplied from the server 65 to the terminal K8 ofthe multiplexer 17 through the encrypting section 67 to be multiplexedwith the transport stream. At program provision, the control section 11generates the clock and the key, which are supplied to the terminal K8of the multiplexer 17 to be multiplexed with the transport stream.

As described with reference to FIGS. 10A through 10C, in time zone from0:00 to 6:00, the band of channel A, namely the channel of the programto be broadcast so as to be viewable in real time, is 8 Mbps. To realizethis situation, the control section 11 instructs the video encoder 15 tochange the bit rate to 6 Mbps for example. This value is obtained sothat the band of the channel A becomes 8 Mbps including the output,multiplexing overheads and the like of the audio encoder 16.Consequently, the band for preloading can be allocated by 16 Mbps (=24Mbps−8 Mbps).

When preloading starts in step S25, “all delete command” is transmittedin the control stream in step S26. To be more specific, the controlsection 11 generates “all delete command.” “All delete command”, is oneof the control commands described with reference to Table 2, with thevalue of “command_flag” set to “0000 0001” with the remaining portionfilled with stuffing bytes. The control section 11 supplies thegenerated “all delete command” to-the terminal K7 of the multiplexer 17.

By use of the preset PID value for the control stream, the multiplexer17 stores the control stream supplied to the terminal K7 into transportpackets.

It should be noted that the multiplexer 17 and the multiplexing controlsection 19 perform the same operations as those conventionally performedas described with reference to FIG. 2. To be more specific, the datasupplied to the terminals K1 through K8 are time-division multiplexedwith each other by MPEG2 TS. These data are those of a program (adirect-transmitted program) which is viewable in real time.

Hence, the multiplexed control stream information, “all delete command”in this case, is multiplexed with other input signals to be outputtedfrom the multiplexer 17. The output from the multiplexer 17 is suppliedto the ECC/modulating section 20, the amplifying section 21, and theantenna 22 in this order to be transmitted therefrom. In what follows,the processing for the stream outputted from the multiplexer 17 is thesame as described above and therefore its description will be skipped.

In a period from the transmission of “all delete command” to the passingof a predetermined time, the control section 11 does not start theprocess of next step. This wait time is 30 seconds or one minute forexample, which is long enough for deleting the data stored in thestorage device in the receiving apparatus 3 by executing (receiving) the“all delete command” in the receiving apparatus 3. This wait time iscounted by the clock 13 in the control section 11.

Next, the transmission of a preloaded program is executed. First, instep S27, “body download advance notice” command is transmitted in thecontrol stream. To be more specific, the control section 11 generates“body download command.” “Body download command” is one of the controlcommands described with reference to Table 2, with “command_flag” valueset to “0000 0010.”

The control section 11 describes, in this control command, the file name(file_name) of “stream file” to be downloaded (transmitted), “imagex.pre” in this example, and the size (size) of this file. The remainingportion is filled with stuffing bytes. Then, the control section 11supplies the generated “body download command” to the terminal K7 of themultiplexer 17.

Like the above-mentioned “all delete command,” the multiplexer 17multiplexes the supplied command with other input signals and outputsthe multiplexed signal. After transmitting the “body download command,”the control section 11 waits for a predetermined time to pass. This timeis set to a value enough for storing the downloaded data into thestorage device in the receiving apparatus 3.

In step S28, the transmitting apparatus 1 transmits “stream file” in thedata stream. To be more specific, the control section 11 first generatesa key for encryption. This process is performed by use of a subroutinefor random number generation incorporated in the control section 11, forexample. A different encryption key is generated every time. It shouldbe noted that this key is kept stored in the memory 12 until the end ofprogram provision (in this case, 21:00 for program X and 23:00 forprogram Y).

The control section 11 supplies the generated encryption key to theencrypting section 67 and puts the encrypting section 67 into the stateof waiting for data from the server 65. At the same time, the controlsection 11 makes settings so that the switch 68 is connected to terminalb in order to supply encrypted data to the terminal K8 of themultiplexer 17.

Next, the control section 11 instructs the server 65 to output thestream file of “program X”, namely the file having file name “programx.pre”, to the encrypting section 67. The server 65 supplies thecontents of the specified file to the encrypting section 67. At thismoment, the bit rate of the output from the server 65 is set to a valueobtained by subtracting the multiplexing overhead from the bit rate of16 Mbps allocated for preloading. The control section 11 specifies theoutput bit rate for the server 65.

Another method may be used in which, without limiting the output rate ofthe server 65 and with the output rate of the multiplexer 17 left set to24 Mbps, the entire band remaining after multiplexing the inputs fromother than the terminal K8 is allocated to the data supplied to theterminal K8.

The encrypting section 67 encrypts the data supplied from the server 65by use of the encryption key supplied from the control section 11. Anyencryption scheme may be used. It should be noted that, in the followingdescription, assumption is made that the size (size) of content remainunchanged after encryption. The data encrypted by the encrypting section67 are supplied to the terminal K8 of the multiplexer 17 via theterminal b of the switch 68.

By use of the predetermined PID value for the data stream, themultiplexer 17 stores the data stream supplied to the terminal K8, theencrypted stream file in this case, into a transport packet andmultiplexes stream file with other inputted data to output themultiplexed data stream file.

The transport packet storing the stream file has one of the “data/timeand key formats” described with reference to Table 3, with the value of“command_flag” set to “0000 1001.” Command_flag is followed by thenumber of pieces of data (num_of_data) of the stream file stored in thistransport packet, which is followed by the data body (data_byte). Ifpayload( ) has still a free space, it is filled with stuffing bytes.

The above-mentioned processing is repeated until the entire stream fileis transmitted.

When the transmission of the stream file (the data of program body) hasbeen completed, then the procedure goes to step S29, in which thetransmitting apparatus 1 transmits “positional information downloadadvance notice” command in the control stream. To be more specific, thecontrol section 11 first generates “positional information downloadcommand.” “Positional information download command” is one of thecontrol commands described with reference to Table 2, with the value of“command_flag” set to “0000 0011.”

Next, the control section 11 describes the file name of “positionalinformation file” to be download, “program x.cpi” in this example, andits size (size) The remaining portion is filled with stuffing bytes. Thecontrol section 11 supplies the generated “positional informationdownload command” to the terminal K7 of the multiplexer 17.

The multiplexer 17 multiplexes the supplied command with other inputdata and outputs the multiplexed data. After transmitting “positionalinformation download command,” the control section 11 waits for apredetermined time to pass.

When the predetermined time has passed, the control section 11 startstransmitting the positional information file in step S30. In step S30,the transmitting apparatus 1 transmits “positional information file” inthe data stream. Namely, first, the control section 11 instructs theencrypting section 67 to output the input signal supplied from theserver 65 without change. At the same time, the control section 11 setsthe switch 68 to connect to the terminal b so that the signal outputtedfrom the encrypting section 67 is supplied to the terminal K8 of themultiplexer 17.

It should be noted that another configuration may be used in which aswitch is arranged between the server 65 and the encrypting section 67for switching the output from the server 65 to the terminal b of theswitch 68 via the encrypting section 67 or to the terminal b of theswitch 68 without passing through the encrypting section 67, therebyselecting whether or not the encryption by the encrypting section 67 isto be performed.

In addition to the above-mentioned process in step S30, the controlsection 11 instructs the server 65 to output the positional informationfile for “program X,” namely the file having file name “program x.cpi,”to the encrypting section 67. The server 65 supplies the contents of thespecified file to the encrypting section 67.

The output bit rate of the positional information file from the server65 is also set in the same manner as the above-mentioned datatransmission of the program body (in this example, the transmission offile “program X.pre”), so that its description will be skipped.

By use of the predetermined PID value for the data stream, themultiplexer 17 stores the data stream supplied to the terminal K8, thepositional information file not encrypted in this example, into atransport packet and multiplexes this file with other input signals tooutput the multiplexed signal.

The transport packet for storing the positional information file is oneof “data/time and key formats” described with reference to Table 3, with“command_flag” set to “0000 1001.” This is followed by the number ofpieces of data (num_of_data) of the positional information file storedin this transport packet, which is followed by the data body(data_byte). If payload( ) has still a free space, it is filled withstuffing bytes. This processing is repeated until the entire positionalinformation file has been transmitted.

The transmission of stream file “program X.pre” and positionalinformation file “program x.cpi” constituting one “program X” to bepreloaded is completed by the above-mentioned sequence of processingoperations.

When the transmission of the data (the data of program body and the dataof positional information file) associated with one program has beencompleted, then, in step S31, it is determined whether or not thetransmission of all programs to be preloaded has been completed. Thisdetermination is made by referencing the organization data stored in thememory 12 by the control section 11.

In this case, there are two programs to be preloaded, so that it isdetermined in step S31 that the transmission of all programs has not yetbeen completed, upon which the procedure returns to step S27, in whichthe above-mentioned processing is repeated for “program Y.” Since thedata associated with “program Y” are transmitted in the same manner asthe above-mentioned data associated with “program X,” its descriptionwill be skipped.

On the other hand, if the transmission of all programs is foundcompleted in step S31 by referencing the organization data by thecontrol section 11, then the processing for preloading shown in theflowchart of FIG. 17 comes to an end. It should be noted that theprocessing for preloading shown in FIG. 17 must be completed by about6:00 of the day on which these programs become viewable to the user asdescribed above (namely, within the time in which the band is allocatedfor the preloaded programs).

The data associated with the preloaded programs as described above arethen stored in the storage device of the receiving apparatus 3. However,it is undesirable in terms of operation from the viewpoint of copyrightprotection if this storage device is removed to be connected to anotherapparatus for unauthorized viewers to view programs or make viewableoutside the authorized viewable time zone (from 19:00 to 23:00 in thisexample).

Therefore, in the present embodiment, the data of the body of eachprogram to be preloaded (in this example, the data of “program X.pre”and “program Y.pre”) are encrypted by the encrypting section 67 beforetransmission and the receiving apparatus 3 stores the encrypted data.This configuration prevents the above-mentioned problem from occurring.

However, the encrypted data alone cannot make the programs viewable whenthe predetermined viewable time has been reached. The followingdescribes the operation of the transmitting apparatus 1 to be performedin the viewable time zone (from 19:00 to 23:00) with reference to theflowchart shown in FIG. 18.

In step S41, the transmitting apparatus 1 transmits “time information”in the data stream immediately before the time of preloaded programprovision (time t21) as shown in FIG. 15. Namely, the control section 11first generates the data for time and key. The structure of thetransport packet to be used at this moment is one of the data/time andkey formats described with reference to Table 3, with the value of first“command_flag” set to “0000 1010.”.

Next, the control section 11 sets time information. The control section11 reads the value of the internal clock 13 and makes a time at whichthe places (digits) less than “second” caused 10 seconds after thatpoint of time become 0, namely a time at which the places (digits) of“second” carries become “time information” and the MPEG2 PCR definitionof “time information” become “PTS.”

The following describes “a time at which the places (digits) less than“second” caused 10 seconds after that point of time become 0” in detail.In the present embodiment, the time information indicated in theabove-mentioned data/time and key format is set down to “second places(digits)” and therefore does not represent any value less than “second.”Therefore, the places (digits) smaller than second represent a timeindicative of all “0”s, namely, just “XX second.”

In this example, the time information down to “second” places (digits)exists, so that the time is used in which any time “less than second” is0. However, times other than “less than second” may be used depending onthe settings; namely, the places (digits) smaller than the existing(set) places (digits) may all become 0.

In this example, “10 seconds after” is used in consideration of the timenecessary for executing the processing in the multiplexer 17, theECC/modulating section 20, and amplifying section 21 after generatingthe time information in the control section 11 and the time necessaryfor processing the received time information in the receiving apparatus3. Therefore, the time information may not be a value “10 seconds”;namely, the time information may be set to an appropriate valuedepending on the characteristics of each broadcasting system or thetransmitting apparatus 1.

“Time information” includes values such as year 2000 (year), October(month), 10 (day), 18:00 (hour), 49 minutes (minute), and 50 seconds(second). The PTS indicates, in a PCR value, the time represented in“time information.”

At this point of time, “file name corresponding to program,” “starttime,” “program length,” and “encryption key” are not transmitted.Namely, in the above-mentioned data/time and key format, the length offile name (len_filename) is set to 0 and the data body of file name(filename_data) is not transmitted. Program start time (start_time_hour,start_time_min) and the program length (length_hour, length_min) arealso set to 0. In addition, “key” value is set to 0. The data havingthese settings are transmitted.

The control section 11 supplies the generated time and key data to theterminal K7 of the multiplexer 17. The multiplexer 17 uses thepredetermined PID value for the control stream to store the datasupplied to the terminal K7 into a transport packet, multiplexes thestored data with other input signals, and outputs the multiplexedsignal.

In step S42, it is determined whether or not the program provision timehas been reached. If the program provision time is found not reached instep S42, then the procedure returns to step S41 to repeat theabove-mentioned processing therefrom. On the other hand, if the programprovision time is found reached in step S42, then the procedure goes tostep S43.

Namely, as described with reference to FIG. 15, until time t22 has beenreached, the control section 11 continues to transmit the timeinformation at certain time intervals. The control section 11 generatesthe time information at certain time intervals and transmits thegenerated time information in the control stream as time and key data.When time t22 has been reached, the procedure goes to step S43 to starttransmitting the program information and key.

When time t22, or the time of providing preloaded program “program X”,has been reached in step S43, the control section 11 adds theinformation about “program X” to the data to be transmitted. Namely,“program X” is put in “file name corresponding to program.” At thismoment, value “3” is put in len_filename and filename_data which appearsthree times has values “ban,” “gumi,” and “X” respectively. Since theprogram start time is 19:00, “19” is put in “start_time_hour” and “0” isput in start_time_min.

Further, since the length of program is two hours, “2” is put inlength_hour and “0” is put in “length_min.” The encryption key used forpreloading “program X” is put in key (key). The control section 11supplies the time and key data thus generated to the multiplexer 17 totransmit the multiplexed data.

Until time t23 has been reached, the control section 11 continuestransmitting the time and key information for “program X” at certaintime intervals. The control section 11 generates the time information atcertain time intervals, adds the program information thereto, andtransmits the resultant data in the control stream as time and key data.

In step S44, it is determined whether or not the program (in thisexample, program X) has ended. In this case, this processing isperformed by the control section 11 by referencing the internal clock 13to determine whether or not 21:00 has been reached. If the program isfound not ended in step S44, then the procedure returns to step S43 torepeat the above-mentioned processing therefrom.

On the other hand, if the program is found ended in step S44, then theprocedure goes to step S45 to determine whether or not there is anotherprogram to be provided. In this example, there is “program Y,” so thatthe decision is YES, upon which the above-mentioned processing from stepS43 is repeated. The same processing as for “program X” is performed on“program Y,” so that its description will be skipped.

In this example, the above-mentioned processing is performed on both“program X” and “program Y,” so that, if no next program is found instep S45, or if time t24 (FIG. 15) is found reached, the control section11 stops transmitting the time and key information. As described withreference to FIG. 15, this event ends at 23:00.

The following describes the receiving apparatus 3 which receives thedirect-transmitted programs (the transmitted programs which are viewablein real time on the receiving apparatus 3) and the preloaded programs(the programs which are transmitted in advance and become viewable at apredetermined time).

FIG. 19 shows an internal configuration of the receiving apparatus 3practiced as one embodiment of the present invention. With reference toFIG. 19, components similar to those previously described with FIG. 3are denoted by the same reference numerals and their descriptions willbe omitted as appropriate. Comparison between the receiving apparatus 3shown in FIG. 3 (prior-art) and the receiving apparatus 3 shown in FIG.19 (present invention) indicates that the receiving apparatus 3 shown inFIG. 19 has a storage-system PID filter 71 in place of the EPG PIDfilter 37 of the receiving apparatus 3 shown in FIG. 3.

In what follows, the EPG handled by the prior-art EPG PID filter 37 isreferred to as “old EPG” and the EPG handled by the storage-system PIDfilter 71 is referred to as “new EPG” so as to distinguish them asrequired.

The storage-system PID filter 71 extracts, from the supplied transportstream, the transport packet including the control stream, the new EPG,and the data stream (time and key data and content data). The controlstream, the new EPG, and the time and key data in the data stream aresupplied to the control section 31. The stream file and positionalinformation file in the data stream are supplied to a hard disk 73 via adata extracting section 72. The PID of the transport packet containingthese pieces of information is given by the control section 31.

The storage-system PID filter 71 is shown here as one filter. It alsomay have a configuration shown by a plurality of block diagrams or maybe constituted with other functional components.

The hard disk 73 arranged in the receiving apparatus 3 as a storagedevice stores, under the control of the control section 31, the streamfile and positional information file supplied from the storage-systemPID filter 71 via the data extracting section 72. The positionalinformation file is used by the control section 31. The stream file issupplied from the hard disk 73 to a descrambler 74 under the control ofthe control section 31.

The descrambler 74 decrypts the supplied stream file by the key given bythe control section 31 and supplies the decrypted stream file to theterminal a of a switch 75. The input into the output PID filter 38 isthe data of one of the received transport stream from the front end 35(terminal b) and the temporarily stored stream file from the descrambler74 (terminal a), which are switched therebetween by the switch 75.

Unless instructed by the control section 31, the switch 75 is notconnected to the terminal a side. The control section 31 controls theswitch 75 so that it is connected to the terminal a side only during aperiod in which a preloaded program (a program stored in the hard disk73) is viewable.

The following describes the operation of the receiving apparatus 3 shownin FIG. 19. The control section 31 of the receiving apparatus 3 isexecuting two processes at a time. One is display control and the otheris preloaded data reception control. The following first describes thedisplay control of the two processes running at a time with reference tothe flowcharts shown in FIG. 20 and FIG. 21.

In step S51, the control section 31 determines whether or not the viewernot shown has turned on (power on) the power switch by operating abutton (not shown) of a remote controller (not shown) or the receivingapparatus 3. It should be noted that the receiving apparatus 3 hasalready started operating at supplying of the power, so that the powerswitch in step S51 is used to perform a display operation. If the powerswitch is found turned on, the procedure goes to step S52; if the powerswitch is found not turned on, the procedure returns to step S51 torepeat the above-mentioned processing therefrom (the standby state iscontinued).

In step S52, it is determined whether or not at least one of the PSIinformation and the “new EPG” information stored in the memory 32 of thecontrol section 31 is lacking or obsolete. If one or both of the PSI andnew EPG are found lacking or obsolete in step S52, then the proceduregoes to step S53; if the decision is otherwise (both the PSI and EPG areenough), then the procedure goes to step S54 by skipping step S53.

The decision in step S52 is performed by comparing the PSI and EPGinformation in the memory 32 with the date indicated by the clock 33 bythe control section 31.

In step S53, the control section 31 instructs the front end 35 toreceive a default channel. The default channel is set to the receivingapparatus 3 in advance. In the present embodiment, the default channelis channel A of direct transmission (if there are two or moredirect-transmitted channels, any channel may be used as default). Thefront end 35 tunes in the frequency/band on which the default channel istransmitted, demodulates the signal, performs error correction on thesignal by use of error correction code, and outputs the processed dataas a transport stream.

The transport stream outputted from the front end 35 is supplied to thePSI filter 36 and the storage-system PID filter 71. The transport streamis also supplied to the PCR PID filter 39 and the output PID filter 38via the switch 75. However, in the process of step S53, the transportstream supplied to the PCR PID filter 39 and output PID filter 38 arenot processed.

The PSI filter 36 extracts the PSI information from the suppliedtransport stream and supplies the extracted PSI information to thecontrol section 31. The PSI supplied to the control section 31 is storedin the memory 32 of the control section 31.

The control section 31 supplies the value of the PID of the transportpacket carrying “new EPG” to the storage-system PID filter 71. Thisvalue is set in advance and stored in the control section 31. By use ofthe given PID value, the storage-system PID filter 71 extracts the EPGinformation from the transport packet and supplies it to the controlsection 31. The supplied EPG information is stored in the memory 32.

The format of the EPG information used this time is as already describedwith reference to Table 1. The information supplied to the controlsection 31 is the organization data described with reference to FIG. 12and the file name corresponding to the preloaded program.

The PSI and EPG information is included in each transport stream. In thereceiving apparatus 3, the above-mentioned operation is alwaysperformed, always updating the PSI and EPG information. The PSI and EPGinformation is also updated during the provision (viewing/reproduction)of each preloaded program.

The control section 31 extracts/manipulates the EPG information asrequired or as instructed by the user not shown and instructs the OSD 43to convert the resultant EPG information into a video signal. The videosignal generated by the OSD 43 is mixed by the adding section 44 withthe output signal from the video decoder 40, and the resultant signal isoutputted to a television receiver not shown.

In step S54, the control section 31 reads the channel which was beingviewed immediately before the last power-off operation from an internalnon-volatile storage device not shown for example. The followingdescription will be made by assuming that channel A was being viewedbefore the last power-off operation.

Immediately after a power-on operation, the receiving apparatus 3controls so that “direct-transmitted channel” which was being viewedimmediately before becomes viewable. Obviously, “direct” or “preloaded”channel which was being viewed immediately before a power-on operationmay be displayed.

The control section 31 instructs the front end 35 to receive channel A.The front end 35 tunes in the frequency/band on which channel A istransmitted, demodulates the signal, performs error correction by use oferror correction code, and outputs the resultant signal as a transportstream.

The transport stream outputted from the front end 35 is supplied to thePSI filter 36, the storage-system PID filter 71, the PCR PID filter 39,and the output PID filter 38 via the switch 75.

The control section 31 supplies the PID value of the transport packetcarrying the video stream and the PID value of the transport packetcarrying the audio stream to the output PID filter 38. The controlsection 31 supplies the PID value of the transport packet carrying PCRto the PCR PID filter 39. The pieces of PID information are thosesupplied from the PSI filter 36.

By use of the two given PID values, the output PID filter 38 extractsthe video stream and the audio stream from the transport packet. Thevideo stream is supplied to the video decoder 40 and the audio stream issupplied to the audio decoder 41.

The video decoder 40 converts the supplied MPEG2 video stream into avideo signal and outputs the resultant signal, and the audio decoder 41converts the supplied MPEG2-AAC audio stream into an audio signal tooutput the resultant signals.

By use of the supplied PID value, the PCR PID filter 39 extracts PCRfrom the transport packet and supplies it to the STC 42. The STC 42synchronizes its clock with the supplied PCR. The internal clockgenerated by the PCR is used as a synchronous clock for the videodecoder 40 and the audio decoder 41.

As described above, the PSI filter 36 extracts the PSI information fromthe inputted transport stream and supplies it to the control section 31,upon which the PSI stored in the memory 32 is updated. As describedabove, the storage-system PID filter 71 uses the given PID value toselect a transport packet, extracts EPG data, and supplied the extractedEPG data to the control section 31. Thus, the EPG information stored inthe memory 32 is updated.

In step S55, the control section 31 determines whether or not the viewerhas operated the remote controller or the button (both not shown) tochange the channel. If the channel is found changed by the user in stepS55, then the procedure goes to step S59; otherwise, the procedure goesto step S56.

In step S56, the control section 31 determines whether or not theprogram currently outputted (decoded) is a preloaded program. If thecurrently outputted program is found a preloaded program in step S56,then the procedure goes to step S58; otherwise, the procedure goes tostep S57.

In step S57, the control section 31 determines whether or not the userhas turned off the power switch. It should be noted that the state inwhich the power switch is off in step S57 denotes the state in which theswitch for performing a display operation is off. If the power switch isturned off in step S57, the video decoder 40 and audio decoder 41 stopoutputting, upon which the procedure returns to step S51 to repeat theabove-mentioned processing therefrom. On the other hand, if the powerswitch is found not turned off in step S57, the procedure returns tostep S55 to repeat the above-mentioned processing therefrom.

On the other hand, if the channel change is found instructed by the userin step S55 and the procedure goes to step S59, the control section 31determines whether or not the specified channel is a preloaded channel(in this case, channel B). If the specified channel is found a preloadedchannel in step S59, the procedure goes to step S61 (FIG. 21); if thespecified channel is found not a preloaded channel, namely if thespecified channel is found a direct-transmitted channel (in this case,channel A), the procedure goes to step S60.

In step S60, the control section 31 instructs the front end 35 toreceive the direct-transmitted channel corresponding to the specifiedchannel. The transport stream outputted from the front end 35 as aresult of the above-mentioned processing is processed in the same manneras the process of step S54, thereby outputting the data of the programcorresponding to the newly selected channel. Then, the procedure returnsto step S55 to repeat the above-mentioned processing therefrom.

On the other hand, if the specified channel is found a preloaded programchannel in step S59 and the procedure goes to step S61 (FIG. 21), thecontrol section 31 compares the EPG information stored in the memory 32with the time indicated by the clock 33 to determine whether or not thepreloaded program is currently provided in the specified preloadedprogram channel (in other words, in this case, whether or not it is19:00 to 23:00, a viewable time zone). If the preloaded program is foundprovided, then the procedure goes to step S62; otherwise, the proceduregoes to step S66.

If the user-specified preloaded channel is found provided, the controlsection 31 searches the information stored in the memory 32 for the filename of the currently provided preloaded program in step S62. To be morespecific, the control section 31 checks the program guide for theuser-specified preloaded channel at the time indicated by the clock 33to find the associated file name.

The control section 31 determines whether or not the file concerned isrecorded to the hard disk 73. If both the stream file (“*.pre”) and thepositional information file (“*.cpi”) corresponding to the fileconcerned are found stored in the hard disk 73 in step S62, then theprocedure goes to step S65. If only one or none of them is found stored,then the procedure goes to step S63.

If the file associated with the program corresponding to theuser-specified channel is found stored in step S62 and the proceduregoes to step S65, then the control section 31 instructs the front end 35to receive the channel of channel A. In the present embodiment, asdescribed above, it is set in advance that the information (for example,key information) associated with the preloaded program is supplied onthe same frequency/band as channel A and the instruction is made toreceive the channel of channel A in order to receive that information.

Also, the control section 31 causes the switch 75 to connect to theterminal a side to supply the output of the descrambler 74 to the outputPID filter 38.

The front end 35 tunes in the frequency/band on which channel A istransmitted, demodulates the signal, performs error correction by use oferror correction code, and outputs the data as a transport stream. Thetransport stream outputted from the front end 35 is supplied to the PSIfilter 36, storage-system PID filter 71, and PCR PID filter 39.

The control section 31 supplies the PID value of the transport packetcarrying the data stream to the storage-system PID filter 71. This valueis determined in advance and stored in the control section 31. By use ofthe supplied PID value, the storage-system PID filter 71 extracts thedata stream from the transport packet and supplies the data stream tothe control section 31.

At supplying of the preloaded program, the data stream contains time andkey data. At this moment, the format used is one of the formatsdescribed with reference to Table 3, namely the format with“command_flag” value set to “0000 1010.” The control section 31 extractsthe key from the time and key data and supplies the extracted key to thedescrambler 74. Consequently, the stream file stored in the hard disk 73in advance may be decrypted.

Next, the control section 31 checks the EPG information stored in thememory 32 for the start time of the program concerned. As shown below,the elapsed time from the beginning of the program concerned can beobtained by a difference between the start time of the program concernedand the current time indicated by the clock 33:Elapsed time from the beginning of program=(current time)−(program starttime)

The control section 31 reads positional information file “*.cpi” fromthe hard disk 73. The positional information file is the informationwhich represents the positions of all intra-pictures of the stream filein combinations times and byte offsets in the sequence of theirappearance as described before. The control section 31 searches for theintra-picture at a position to be displayed immediately after computed“elapsed time from the beginning of program”, by use of a method such asbinary search for example. This position is hereafter referred to as areproduction position.

The control section 31 instructs the hard disk 73 to supply the datastarting with the reproduction position of the file concerned to thedescrambler 74. The descrambler 74 decrypts the stream file suppliedfrom the hard disk 73 by use of the key supplied from the controlsection 31. The output from the descrambler 74 is supplied to the outputPID filter 38 via the switch 75. The decrypted stream file is compliantwith the format of transport stream.

The control section 31 supplies to the output PID filter 38 the PIDvalue of the transport packet carrying the video stream and the PIDvalue of the transport packet carrying the audio stream. These twovalues are predetermined for each preloaded stream file.

The output PID filter 38 extracts the video stream and the audio streamfrom the transport packets by use of the given two PID values. The videostream is supplied to the video decoder 40 and the audio stream issupplied to the audio decoder 41.

The video decoder 40 converts the supplied MPEG2 video stream into avideo signal and outputs it. The audio decoder 41 converts the suppliedMPEG2-AAC audio stream into an audio signal and outputs it.

The control section 31 supplies the PID value of the transport packetcarrying PCR to the PCR PID filter 39. During supplying of eachpreloaded program, the transport stream carrying time and key data iscarrying PCR, so that the same value as the PID of the data stream isset.

The PCR PID filter 39 extracts PCR from the transport packet by use ofthe given PID value and supplies the extracted PCR to the STC 42. TheSTC 42 synchronizes its clock with the inputted PCR. The internal clockgenerated by the STC 42 is used as a synchronous clock for the videodecoder 40 and the audio decoder 41.

At this moment, the realtime PCR to be transmitted in the time and keydata (the data stream) is different in value from the PTS of the streamfile stored in the hard disk 73. Hence, by computing the differencebetween these values in advance, the video decoder 40 and the audiodecoder 41 synchronizes the clock of video code/audio code with thevalue obtained by adding the computed difference to the PCR.

The PSI and EPG information is also updated during the provision of thepreloaded program. Namely, the PSI filter 36 extracts the PSIinformation from the inputted transport stream and supplies theextracted PSI information to the control section 31. The supplied PSI isstored in the memory 32 of the control section 31.

The control section 31 supplies the PID value of the transport packetcarrying “new EPG” to the storage-system PID filter 71. This value ispredetermined and stored in the control section 31. By use of the givenPID value, the storage-system PID filter 71 extracts EPG informationfrom the transport packet and supplies it to the control section 31. Thesupplied EPG information is stored in the memory 32 of the controlsection 31.

The above-mentioned operations are executed as the process of step S65and, when the preloaded program is provided to the viewer, the procedurereturns to step S55 (FIG. 20) to repeat the above-mentioned processingtherefrom.

On the other hand, if the preloaded program is found not being providedat the current time in step S61, in other words, if the current time isnot 19:00 to 23:00 and the viewing of the preloaded program is notpermitted, then the procedure goes to step S66, in which the controlsection 31 instructs the OSD 43 to generate a message “The preloadedprogram is not currently provided.” The output signal of the OSD 43 ismixed by the adding section 44 with the output of the video decoder 40and the resultant signal is outputted. When the above-mentionedprocessing comes to an end, the procedure goes to step S64.

It should be noted that the information associated with programprovision such as preloading and direct-transmission need not be givento the viewer. Since giving such information may confuse or trouble theviewer, it is preferable to generate a message “Currently, no program isprovided on the specified channel” for example, thereby not telling theviewer of such information as preloading and direct-transmission.

In step S64, the control section 31 provides the program of directtransmission channel viewed immediately before. The control section 31instructs the front end 35 to receive the specified channel.Consequently, by processing the transport stream outputted from thefront end 35 in the same manner as described above in step S54, thedisplay of the program viewed at instructing the channel change isstarted again. When the above-mentioned processing comes to an end, theprocedure returns to step S55 (FIG. 20) to repeat the above-mentionedprocessing therefrom.

On the other hand, if the file of the program corresponding to thespecified channel is found not stored in the hard disk 73 in step S62,then the procedure goes to step S66, in which the control section 31instructs the OSD 43 to generate message “The program cannot be viewedbecause its file has not been loaded” for example. The output signal ofthe OSD 43-is mixed by the adding section 44 with the output of thevideo decoder 40 and the resultant signal is outputted. Like theabove-mentioned message generated in step S63, it is preferable togenerate the message in step S66 so that the viewer need not recognizethe difference between preloading and direct transmission.

On the other hand, if the preloaded program is found being decoded instep S56 (FIG. 20), then the procedure goes to step S58 to determinewhether or not the program being provided (decoded) has come to an end.For example, because program X is provided between 19:00 and 21:00, theprogram being provided is determined ended when 21:00 has been reachedand determined not ended before 21:00 in step S58.

Therefore, if the program being provided is found not ended in step S58,the procedure returns to step S55 to repeat the processing therefromuntil the end is detected. When the program is found ended, theprocedure goes to step S67 (FIG. 21). It should be noted that theprocess in step S58 is performed by checking whether or not the programoutputted by the hard disk 73 instructed by the control section 31 bymeans of the EPG data stored in the memory 32, thereby determiningwhether or not the time indicated by the clock 33 indicates thebroadcasting of the program concerned or the end of broadcasting (theend of provision).

In step S67, the control section 31 checks the channel on which theprogram concerned is being provided by referencing the EPG informationrecorded to the memory 32 to determine whether or not the channelconcerned has next “preloaded program.” If a next program is found, thenthe procedure goes to step S68; if a next program is not found, theprocedure goes to step S64. The processing to be performed from step S64has already been described and therefore its description will beskipped.

In this case, if the process of step S67 is executed when the program Xis being provided on channel B, the procedure goes to step S68 becausethere is program Y. If the process of step S67 is executed when programY is being provided, the procedure goes to step S64 because there is noprogram to be provided next, in which the channel is switched to thedirect-transmitted program viewed immediately before the preloadedprogram X is viewed.

In step S68, the control section 31 determines the preloaded program tobe broadcast next on the channel concerned on the basis of the EPGinformation stored in the memory 32 and the time indicated by the clock33. The processing from step S62 is executed on the determined program.Controlling the display as described above allows the switching betweendirect-transmitted program and preloaded program as if it were, for theviewer, the switching between two direct-transmitted channels.

The following describes the further details of the time and key datadescribed above with reference to Table 3. The data associated with dateand time (year, month, day, hour, minute, and second) and the PTS forthese data are used to correct the time of the clock 33. Namely, themoment at which the PTS added to the date information concerned becomesequal to the STC synchronized with the PCR added and inputted to thetransport stream of the time and key data is the moment indicated by thedate information concerned.

The control section 31 rewrites the information of the clock 33 by theinputted date information concerned at that moment to match the clock 33with the clock 13 of the transmitting apparatus 1 (FIG. 8). It should benoted that this task is not performed every time; it is performed once aday for example.

The information associated with file name (len_filename, filename_data)may be used in the process of step S62 for obtaining the file name,instead of checking the EPG information stored in the memory 32.

In addition, start time (start_time_hour, start_time_min) and programlength (length_hour, length_min) may be used for the checking in theprocess of step S61 and for the computation of elapsed time in step S65.

The receiving apparatus 3 performs the above-mentioned display controlas well as the control of receiving the data of each preloaded program.The following describes the operation of the receiving apparatus 3associated with the reception of the data of each preloaded program withreference to the flowchart shown in FIG. 22.

In step S81, the control section 31 supplies the PID value of thetransport packet carrying the control stream to the storage-system PIDfilter 71. This value is predetermined and stored in the control section31. The storage-system PID filter 71 extracts the control streaminformation from the transport packet by use of the supplied PID valueand supplies the extracted information to the control section 31. Theinformation included in the control stream is any of the controlcommands described before with reference to Table 2.

In step S82, the control section 31 monitors the control stream suppliedfrom the storage-system PID filter 71. The process of step S82 isrepeated until the control stream command is found supplied. When thecontrol stream command is found supplied, the procedure goes to stepS83.

In the processing of step S83 and the following steps, the suppliedcommand is analyzed and process corresponding to the result of theanalysis is executed. The control command has the structure as shown inTable 2. First, in step S83, it is determined whether or not thesupplied command is an all-delete command. This determination is made bychecking command_flag of the first 8 bits by the control section 31which has received this command. If the value of command_flag is “00000001,” it indicates an all-delete command.

If the supplied command is found an all-delete command in step S83, thenthe procedure goes to step S84. In step S84, the control section 31which has received the all-delete command instructs the hard disk 73 todelete “stream file” (“*.pre”) and “positional information file”(“*.cgi”) from the hard disk 73. When this processing comes to an end,the procedure returns to step S82 to wait for another command.

On the other hand, if the supplied command is found not an all-deletecommand in step S83, then the procedure goes to step S85 to determinewhether or not the supplied command is a body download command. If thevalue of command_flag is “0000 0010,” it indicates a body downloadcommand. If the supplied command is found a body download command instep S85, the procedure goes to step S86.

In step S86, receiving the body download command, the control section 31reads the file name (len_filename, filename_data) and the file size(size) from the received command. The file name is suffixed with “.pre”,indicating a stream file.

In step S87, the control section 31 specifies “file name” and “filesize” to the hard disk 73 and instructs it to store the stream filesupplied from the data extracting section 72 in the specified file name.

The control section 31 supplies the PID value of the transport packetcarrying the stream file to the storage-system PID filter 71. This valueis predetermined and stored in the control section 31. By use of thesupplied PID value, the storage-system PID filter 71 extracts the streamfile from the transport packet and supplies the extracted stream file tothe data extracting section 72.

At the time of preloading of a preloaded program, the data stream usesthe download data format. The format to be used is one of the formatsdescribed with reference to Table 3, the value of command_flag being“0000 1001.” The data extracting section 72 removes the command_flagwhich is the beginning of the structure of the download data shown inTable 3, extracts data_byte by use of next num_of_data, and supplies theextracted data_byte to the hard disk 73. The stuffing_byte is alsoremoved.

The hard disk 73 stores the data supplied with the specified name fromthe control section 31. When the supplied data have reached the sizespecified in “file size,” the hard disk 73 sends to the control section31 a signal telling the end of data loading.

In step S88, the control section 31 determined whether or not the signaltelling the end of recording has been inputted from the hard disk 73 andrepeats the process of step S88 until the signal is found inputted. Ifthe signal telling the end of recording is found inputted, theprocessing of step S82 and the following steps are repeated on theinputted command.

On the other hand, if the inputted command is found not a body downloadcommand in step S85, then the procedure goes to step S89. In step S89,if the inputted command is found not a positional information downloadcommand, then procedure returns to step S82 to repeat theabove-mentioned processing therefrom. In this case, if the inputtedcommand is found not a positional information download command, itindicates that the inputted command is an invalid command.

If the inputted command is found a positional information downloadcommand in step S89, then the procedure goes to step S90. The processesof steps S90 through S92 are executed in the same manner as those ofsteps S86 through S88, so that their descriptions will be skippedappropriately.

In step S91, the control section 31 specifies “file name” and “filesize” to the hard disk 73 to instruct it to store the positionalinformation file supplied from the data extracting section 72 in thespecified name.

At the time of preloading of the preloaded program, the data stream usesthe format of the download data format. The format used at this time isone of the formats described with reference to Table 3, of whichcommand_flag value is “0000 1001.”

In step S92, the control section 31 continues the state of waiting forthe signal telling the end of recording from the hard disk 73 asdescribed in step S88 and, when the signal telling the end of recordingis inputted, the procedure returns to step S82 to repeat theabove-mentioned processing therefrom.

Thus, the reception control is performed on the data of preloadedprograms and, at the same time, in the receiving apparatus 3, theabove-mentioned display control is performed.

Application of the present invention apparently increases the number ofchannels in the prime time, thereby widening the channel selection rangein time zones desired by viewers. This does not, however, troubleviewers by increasing the number of processes for example. In addition,the data of program body stored in the hard disk 73 may be encrypted toreliably ensure copyright protection for example.

In the above-mentioned embodiment, preloaded programs anddirect-transmitted programs are classified on a channel basis intopreloaded channels and direct-transmitted channels. Alternatively,preloaded programs and direct-transmitted programs may coexist in asingle channel on a program basis or in units smaller than the program.

In the above-mentioned embodiment, the band diverted to the prime timeis used to increase the number of programs. Alternatively, thisdiversion may be made to enhance the picture quality of programs.Namely, in the direct-transmission portion, a bit stream of normalpicture quality is transmitted while, in the preloading portion, a bitstream of enhanced picture quality is transmitted.

It is also practicable to transmit a flag indicative of whether or not astream file of preloaded program can be reproduced in a special mannerto determine whether or not reproduce this file in a special manner onthe receiving apparatus 3 side, thereby reproducing the file in aspecial manner if it is enabled.

In the above-mentioned embodiment, the data of preloaded programs aretransmitted from the transmitting apparatus 1. Alternatively, these datamay be transmitted via a network such as the Internet. Alternativelystill, these data may be distributed in a recording medium such asCD-ROM. Copyright protection may also be ensured by the transmission (ordistribution) of the data of preloaded programs if the key data areprovided only at a predetermined time as with the present embodiment.

The above-mentioned sequence of processes may be executed by hardware aswell as by software. To execute the above-mentioned processing bysoftware, a computer in which the programs constituting the software areassembled in a dedicated hardware device is used or the program isinstalled from the recording media into a general-purpose personalcomputer which can execute various capabilities by installing variousprograms.

FIG. 23 illustrates an exemplary internal configuration of ageneral-purpose personal computer. A CPU (Central Processing Unit) 101executes various processes as instructed by programs stored in a ROM(Read Only Memory) 102. A RAM (Random Access Memory) 103 appropriatelystores data and programs necessary for the CPU 101 to execute variousprocesses. An input/output interface 105 is connected to an inputsection 106 constituted by a keyboard and a mouse for example to outputsignals inputted through the input section 106 to the CPU 101. Theinput/output interface 105 is also connected to an output section 107constituted by a display and a speaker for example.

In addition, the input/output interface 105 is connected to a storagesection 108 constituted by a hard disk for example and a communicationsection 109 for transferring data with other devices via a network suchas the Internet. A drive 110 is used to read data from and write data torecording medium such as a magnetic disk 121, an optical disk 122, amagneto-optical disk 123, or a semiconductor memory 124.

The recording media are constituted not only by package media storingprograms such as the magnetic disk 121 (including a floppy disk), theoptical disk 122 (including CD-ROM (Compact Disk-Read Only Memory) and aDVD (Digital Versatile Disk)), and the magneto-optical disk 123(including MD (Mini Disk) (trademark)), and the semiconductor memory 124which are distributed to users to provide the programs independently ofpersonal computers as shown in FIG. 23, but also by a hard diskincluding the ROM 102 and the storage section 108 storing programs to beprovided to users as installed in computers in advance.

It should be noted that the steps for describing programs provided byrecording media include not only the processing operations which areexecuted in a time dependent manner in the order described, but also theprocessing operations which are executed in parallel to each other ordiscretely from each other.

It should also be noted that term system as used herein denotes anentire apparatus constituted by two or more components.

INDUSTRIAL APPLICABILITY

As described and according to the invention, in the transmittingapparatus and method and the first program, inputted data are encryptedby use of a predetermined key, the encrypted data are transmitted in apredetermined time zone, and the key is transmitted after thepredetermined time zone to enable the viewing of a program on thereceiving side at a time intended by the transmitting side, therebyproviding programs by the effective use of band.

As described and according to the invention, in the receiving apparatusand method and the second program, by use of a transmission channel fortransmitting the data of a first program of a first channel, theencrypted program data transmitted in a predetermined time zone arereceived to be stored as the data of a second program of a secondchannel, a key for decrypting the program data transmitted after thepredetermined time zone and at the time of viewing the second program onthe receiving side intended by the transmitting side is received, thedata of the second program are decrypted by the received key, and thestored data of the second program are decoded for reproduction, therebyincreasing the number of channels selectable by viewers.

As described and according to the invention, in the informationtransmitting/receiving system and method and the third program, thetransmitting apparatus encrypts program data by use of a predeterminedkey, transmits the encrypted data to the receiving apparatus in apredetermined time zone, and transmits the key to the receivingapparatus after the predetermined time zone and at the time of viewingthe program on the receiving side intended by the transmittingapparatus; and receiving apparatus receives the transmitted program datato store them, decodes the stored program data by use of the receivedkey to reproduce the program at a viewing time on the receivingapparatus side intended by the transmitting apparatus, thereby allowingthe effective use of band for transmission and the increase in thenumber of channels for users.

1. A transmitting apparatus comprising: input means for inputting dataof a second program; encrypting means for encrypting said data inputtedfrom said input means by use of a predetermined key; detecting means fordetecting a position of an intra-picture from said data, wherein theposition of the intra-picture is detected as a time offset and a byteoffset from the beginning of a bit stream, wherein the time offset andthe byte offset are encrypted with said data; first transmitting meansfor transmitting data of a first program and data of the second programencrypted by said encrypting means; second transmitting means fortransmitting said key at a time for enabling said second program to beviewed on a receiving apparatus at a viewing time established by thetransmitting apparatus, wherein said first program is viewed at a timewhen said data of said first program is received by said receivingapparatus, wherein said second program is viewed at a time when said keyis received by said receiving apparatus and after a predetermined timeslot when the data of said second program is transmitted, and whereinsaid first program and said second program are viewed in the sameviewing time slot.
 2. The transmitting apparatus according to claim 1,wherein said predetermined time slot is in a time zone with a loweraudience rating than another time zone.
 3. The transmitting apparatusaccording to claim 1, further comprising: creating means for creatingassociating information for associating a position of said intra-picturedetected by said detecting means with an elapsed time from a startingtime of said second program; wherein said first transmitting meanstransmits said associating information along with said encrypted data.4. The transmitting apparatus according to claim 1, wherein said firsttransmitting means, by use of a transmission channel for transmittingdata of a first program to be viewed by a viewer in a first programchannel, transmits, in said predetermined time slot, data of a secondprogram to be viewed by said viewer in a second program channel; andsaid second transmitting means transmits said key by use of a sametransmission channel as said transmission channel to be used by saidfirst transmitting means.
 5. The transmitting apparatus according toclaim 4, further comprising: first generating means for generating afirst Electric Program Guide (EPG) associated with both said firstprogram and said second program; and second generating means forgenerating a second Electric Program Guide (EPG) associated with saidsecond program; wherein said first Electric Program Guide (EPG) includesa flag indicative of said first program or said second program.
 6. Atransmitting method comprising: an encrypting step for encrypting secondprogram data by use of a key; a detecting step for detecting a positionof an intra-picture from said second program data, wherein the positionof the intra-picture is detected as a time offset and a byte offset fromthe beginning of a bit stream, wherein the time offset and the byteoffset are encrypted with said data; transmitting data of a firstprogram and data of a second program encrypted by said encrypting step;transmitting said key at a time for enabling said second program to beviewed on a receiving apparatus at a viewing time established by atransmission apparatus, wherein said first program is viewed at a timewhen said data of said first program is received by said receivingapparatus, wherein said second program is viewed at a time when said keyis received by said receiving apparatus and after a predetermined timeslot when the data of said second program is transmitted, and whereinsaid first program and said second program are viewed in the sameviewing time slot.
 7. A recording medium storing a computer programexecuted by a processor, said computer program comprising: an encryptingstep for encrypting second program data by use of a predetermined key; adetecting step for detecting a position of an intra-picture from saidsecond program data, wherein the position of the intra-picture isdetected as a time offset and a byte offset from the beginning of a bitstream, wherein the time offset and the byte offset are encrypted withsaid data; a first transmitting step of transmitting data of a firstprogram and data of a second program encrypted by said encrypting step;a second transmitting step for transmitting said key at a time forenabling said second program to be viewed on a receiving apparatus at aviewing time established by a transmitting apparatus, wherein said firstprogram is viewed at a time when said data of said first program isreceived by said receiving apparatus, wherein said second program isviewed at a time when said key is received by said receiving apparatusand after a predetermined time slot when the data of said second programis transmitted, and wherein said first program and said second programare viewed in the same viewing time slot.
 8. A system comprising: atleast one processor; and at least one memory coupled to the at least oneprocessor, the memory storing a computer program comprising: anencrypting step for encrypting second program data by use of apredetermined key; a detecting step for detecting a position of anintra-picture from said second program data, wherein the position of theintra-picture is detected as a time offset and a byte offset from thebeginning of a bit stream, wherein the time offset and the byte offsetare encrypted with said data; a first transmitting step of transmittingdata of a first program and data of a second program encrypted by saidencrypting step; a second transmitting step for transmitting said key ata time for enabling said second program to be viewed on a receivingapparatus at a viewing time established by a transmitting apparatus,wherein said first program is viewed at a time when said data of saidfirst program is received by said receiving apparatus, wherein saidsecond program is viewed at a time when said key is received by saidreceiving apparatus and after a predetermined time slot when the data ofsaid second program is transmitted, and wherein said first program andsaid second program are viewed in the same viewing time slot.
 9. Areceiving apparatus comprising: storage means for receiving and storing,as data of a second program of a second program channel, encrypted thesecond program data supplied in a predetermined time slot by use of atransmission channel that transmits data of a first program of a firstprogram channel; detecting means for detecting a position anintra-picture from said second program data, wherein the position of theintra-picture is detected as a time offset and a byte offset from thebeginning of a bit stream, wherein the time offset and the byte offsetare encrypted with said data; receiving means for receiving a key fordecrypting said second program data, said key being transmitted aftersaid predetermined time slot and at a time for enabling the viewing, onthe receiving side, of said second program at a viewing time establishedby a transmitting apparatus; and reproducing means for reproducing saidsecond program by decrypting said data of said second program stored insaid storage means by use of said key received by said receiving means,wherein said first program is viewed at a time when said data of saidfirst program is received by said receiving apparatus, wherein saidsecond program is viewed at a time when said key is received by saidreceiving apparatus and after a predetermined time slot when the data ofsaid second program is transmitted, and wherein said first program andsaid second program are viewed in the same viewing time slot.
 10. Areceiving method comprising: a storage control step from controlling thereception of encrypted second program data supplied in a predeterminedtime slot by use of a transmission channel for transmitting data of afirst program of a first program channel and controlling the storage ofthe supplied data as data of a second program of a second programchannel; a detecting step for detecting a position an intra-picture fromsaid second program data, wherein the position of the intra-picture isdetected as a time offset and a byte offset from the beginning of a bitstream, wherein the time offset and the byte offset are encrypted withsaid data; a reception control step for controlling the reception of akey for decrypting said second program data, said key being transmittedafter said predetermined time slot and at a time for enabling theviewing, on a receiving apparatus, of said second program at a viewingtime established by a transmitting apparatus; and a reproducing step forreproducing said second program by decrypting said data of said secondprogram in which the storage is controlled in said storage control stepby use of said key received by said reception control step, wherein saidfirst program is viewed at a time when said data of said first programis received by said receiving apparatus, wherein said second program isviewed at a time when said key is received by said receiving apparatusand after a predetermined time slot when the data of said second programis transmitted, and wherein said first program and said second programare viewed in the same viewing time slot.
 11. A recording medium storinga computer program executed by a processor, said computer programcomprising: a storage control step from controlling the reception ofencrypted second program data supplied in a predetermined time slot byuse of a transmission channel for transmitting data of a first programof a first program channel and controlling the storage of the supplieddata as data of a second program of a second program channel; adetecting step for detecting a position an intra-picture from saidsecond program data, wherein the position of the intra-picture isdetected as a time offset and a byte offset from the beginning of a bitstream, wherein the time offset and the byte offset are encrypted withsaid data; a reception control step for controlling the reception of akey for decrypting said second program data, said key being transmittedafter said predetermined time slot and at a time for enabling theviewing, on a receiving apparatus, of said second program at a viewingtime established by a transmitting apparatus; and a reproducing step forreproducing said second program by decrypting said data of said secondprogram in which the storage is controlled in said storage control stepby use of said key received by said reception control step, wherein saidfirst program is viewed at a time when said data of said first programis received by said receiving apparatus, wherein said second program isviewed at a time when said key is received by said receiving apparatusand after a predetermined time slot when the data of said second programis transmitted, and wherein said first program and said second programare viewed in the same viewing time slot.
 12. A system comprising: atleast one processor; and at least one memory coupled to the at least oneprocessor, the memory storing a computer program comprising: a storagecontrol step for controlling the reception of encrypted second programdata supplied in a predetermined time slot by use of a transmissionchannel for transmitting data of a first program of a first programchannel and controlling the storage of the supplied data as data of asecond program of a second program channel; a detecting step fordetecting a position of an intra-picture from said second program data,wherein the position of the intra-picture is detected as a time offsetand a byte offset from the beginning of a bit stream, wherein the timeoffset and the byte offset are encrypted with said data; a receptioncontrol step for controlling the reception of a key for decrypting saidsecond program data, said key being transmitted after said predeterminedtime slot and at a time for enabling the viewing, on a receivingapparatus, of said second program at a viewing time established by atransmitting apparatus; and a reproducing step for reproducing saidsecond program by decrypting said data of said second program in whichthe storage is controlled in said storage control step by use of saidkey received by said reception control step, wherein said first programis viewed at a time when said data of said first program is received bysaid receiving apparatus, wherein said second program is viewed at atime when said key is received by said receiving apparatus and after apredetermined time slot when the data of said second program istransmitted, and wherein said first program and said second program areviewed in the same viewing time slot.
 13. An informationtransmitting/receiving system having a transmitting apparatus fortransmitting data and a receiving apparatus for receiving said datatransmitted from said transmitting apparatus, said transmittingapparatus comprising: encrypting means for encrypting data of a secondprogram by use of a predetermined key; detecting means for detecting aposition of an intra-picture from said second program data, wherein theposition of the intra-picture is detected as a time offset and a byteoffset from the beginning of a bit stream, wherein the time offset andthe byte offset are encrypted with said data; first transmitting meansfor transmitting data of a first program and data of a second programencrypted by said encrypting means; second transmitting means fortransmitting said key at a time for enabling said second program to beviewed on the receiving apparatus at a viewing time established by thetransmitting apparatus, said receiving apparatus comprising: storagemeans for receiving and storing said data of said second programtransmitted from said first transmitting means; receiving means forreceiving said key transmitted from said second transmitting means; andreproducing means for reproducing said second program at a viewing timeon said receiving apparatus established by said transmitting apparatusby decoding said data of said second program stored in said storagemeans by use of said key received by said receiving means, wherein saidfirst program is viewed at a time when said data of said first programis received by said receiving apparatus, wherein said second program isviewed at a time when said key is received by said receiving apparatusand after a predetermined time slot when the data of said second programis transmitted, and wherein said first program and said second programare viewed in the same viewing time slot.
 14. An informationtransmitting/receiving method for an information transmitting/receivingsystem having a transmitting apparatus for transmitting data and areceiving apparatus for receiving said data transmitted from saidtransmitting apparatus, the information transmitting/recording methodfor said transmitting apparatus comprising: an encrypting step forencrypting data of a second program by use of a predetermined key; adetecting step for detecting a position an intra-picture from saidsecond program data, wherein the position of the intra-picture isdetected as a time offset and a byte offset from the beginning of a bitstream, wherein the time offset and the byte offset are encrypted withsaid data; a first transmitting step for transmitting data of a firstprogram and data of a second program encrypted by said encrypting step;a second transmitting step for transmitting said key at a time forenabling said second program to be viewed on the receiving apparatus ata viewing time established by the transmitting apparatus, theinformation transmitting/receiving method for said receiving apparatuscomprising: a storage control step for controlling the reception andstorage of said data of said second program in which the transmission iscontrolled in said first transmission step; a reception control step forcontrolling the reception of said key in which the transmission iscontrolled in said second transmission step; and a reproducing step forreproducing said second program at a viewing time on said receivingapparatus intended by said transmitting apparatus by decoding said dataof said second program in which the storage is controlled in saidstorage control step by use of said key in which the reception iscontrolled in said reception control step, wherein said first program isviewed at a time when said data of said first program is received bysaid receiving apparatus, wherein said second program is viewed at atime when said key is received by said receiving apparatus and after apredetermined time slot when the data of said second program istransmitted, and wherein said first program and said second program areviewed in the same viewing time slot.
 15. A recording medium storing acomputer program, executed by a processor, for an informationtransmitting/receiving system having a transmitting apparatus fortransmitting data and a receiving apparatus for receiving said datatransmitted from said transmitting apparatus, the computer programincluding a computer program for said transmitting apparatus and acomputer program for said receiving apparatus, wherein, said computerprogram for said transmitting apparatus comprising: an encrypting stepfor encrypting data of a second program by use of a predetermined key; adetecting step for detecting a position of an intra-picture from saidsecond program data, wherein the position of the intra-picture isdetected as a time offset and a byte offset from the beginning of a bitstream, wherein the time offset and the byte offset are encrypted withsaid data; a first transmitting step for transmitting data of a firstprogram and data of a second program encrypted by said encrypting step;a second transmitting step for transmitting said key at a time forenabling said second program to be viewed on the receiving apparatus ata viewing time established by the transmitting apparatus, said computerprogram for said receiving apparatus comprising: a storage control stepfor controlling the reception and storage of said data of said secondprogram in which the transmission is controlled in said firsttransmission step; a reception control step for controlling thereception of said key in which the transmission is controlled in saidsecond transmission step; and a reproducing step for reproducing saidsecond program at a viewing time on said receiving apparatus intended bysaid transmitting apparatus by decoding said data of said second programin which the storage is controlled in said storage control step, by useof said key in which the reception is controlled in said receptioncontrol step, wherein said first program is viewed at a time when saiddata of said first program is received by said receiving apparatus,wherein said second program is viewed at a time when said key isreceived by said receiving apparatus and after a predetermined time slotwhen the data of said second program is transmitted, and wherein saidfirst program and said second program are viewed in the same viewingtime slot.
 16. A system comprising: at least one processor; and at leastone memory coupled to the at least one processor, the memory storing acomputer program for an information transmitting/receiving system havinga transmitting apparatus for transmitting data and a receiving apparatusfor receiving said data transmitted from said transmitting apparatus,the computer program including a computer program for said transmittingapparatus and a computer program for said receiving apparatus, wherein,said computer program for said transmitting apparatus comprising: anencrypting step for encrypting data of a second program by use of apredetermined key; a detecting step for detecting a position of anintra-picture from said second program data, wherein the position of theintra-picture is detected as a time offset and a byte offset from thebeginning of a bit stream, wherein the time offset and the byte offsetare encrypted with said data; a first transmitting step for transmittingdata of a first program and data of a second program encrypted by saidencrypting step; a second transmitting step for transmitting said key ata time for enabling said second program to be viewed on the receivingapparatus at a viewing time established by the transmitting apparatus,said computer program for said receiving apparatus comprising: a storagecontrol step for controlling the storage of said data of said secondprogram in which transmission is controlled in said first transmissionstep; a reception control step for controlling the reception of said keyin which the transmission is controlled in said second transmissionstep; and a reproducing step for reproducing said second program at aviewing time on said receiving apparatus intended by said transmittingapparatus by decoding said data of said second program stored in saidstorage control step by use of said key received by said receptioncontrol step, wherein said first program is viewed at a time when saiddata of said first program is received by said receiving apparatus,wherein said second program is viewed at a time when said key isreceived by said receiving apparatus and after a predetermined time slotwhen the data of said second program is transmitted, and wherein saidfirst program and said second program are viewed in the same viewingtime slot.